diff Framework/Toolbox/DicomStructureSet.h @ 131:3e6163a53b16 wasm

optimization
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 16 Nov 2017 15:00:45 +0100
parents c9e88e7935a4
children 35c2b85836ce
line wrap: on
line diff
--- a/Framework/Toolbox/DicomStructureSet.h	Thu Nov 16 13:46:03 2017 +0100
+++ b/Framework/Toolbox/DicomStructureSet.h	Thu Nov 16 15:00:45 2017 +0100
@@ -22,9 +22,9 @@
 #pragma once
 
 #include "CoordinateSystem3D.h"
+#include "Extent2D.h"
 
 #include <Plugins/Samples/Common/FullOrthancDataset.h>
-
 #include <list>
 
 namespace OrthancStone
@@ -62,12 +62,13 @@
     class Polygon
     {
     private:
-      std::string sopInstanceUid_;
-      bool        hasSlice_;
-      Vector      normal_;
-      double      projectionAlongNormal_;
-      double      sliceThickness_;  // In millimeters
-      Points      points_;
+      std::string         sopInstanceUid_;
+      bool                hasSlice_;
+      CoordinateSystem3D  geometry_;
+      double              projectionAlongNormal_;
+      double              sliceThickness_;  // In millimeters
+      Points              points_;
+      Extent2D            extent_;
 
       void CheckPoint(const Vector& v);
 
@@ -98,6 +99,12 @@
       {
         return sliceThickness_;
       }
+
+      bool Project(double& x1,
+                   double& y1,
+                   double& x2,
+                   double& y2,
+                   const CoordinateSystem3D& slice) const;
     };
 
     typedef std::list<Polygon>  Polygons;