diff OrthancStone/Sources/Scene2D/TextureBaseSceneLayer.h @ 1769:a217140dd41a

refactoring
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 12 May 2021 10:26:13 +0200
parents 226718777702
children fca942f4b4a7
line wrap: on
line diff
--- a/OrthancStone/Sources/Scene2D/TextureBaseSceneLayer.h	Tue May 11 17:18:39 2021 +0200
+++ b/OrthancStone/Sources/Scene2D/TextureBaseSceneLayer.h	Wed May 12 10:26:13 2021 +0200
@@ -24,6 +24,7 @@
 
 #include "ISceneLayer.h"
 #include "../Toolbox/AffineTransform2D.h"
+#include "../Toolbox/CoordinateSystem3D.h"
 
 #include <Compatibility.h>
 #include <Images/ImageAccessor.h>
@@ -125,6 +126,14 @@
 
     void ClearTransform();
 
+    // Initialize a transform that maps a texture slice in 3D, to a
+    // cutting plane (the cutting plane should be parallel to the 3D
+    // slice). The "pixelOffsetX/Y" must take pixel spacing into account.
+    void SetCuttingPlaneTransform(const CoordinateSystem3D& cuttingPlane,
+                                  const Vector& origin,        // coordinates of the center of the voxel
+                                  const Vector& pixelOffsetX,  // 3D offset from (0,0) voxel to (1,0) voxel
+                                  const Vector& pixelOffsetY); // 3D offset from (0,0) voxel to (0,1) voxel
+
     AffineTransform2D GetTransform() const;
     
     virtual void GetBoundingBox(Extent2D& target) const ORTHANC_OVERRIDE;