30 #if defined(DrawWithViewer3DModifier_RECURSES) 31 #error Recursive header files inclusion detected in DrawWithViewer3DModifier.h 32 #else // defined(DrawWithViewer3DModifier_RECURSES) 34 #define DrawWithViewer3DModifier_RECURSES 36 #if !defined DrawWithViewer3DModifier_h 38 #define DrawWithViewer3DModifier_h 43 #include "DGtal/base/Common.h" 44 #include "DGtal/base/Alias.h" 45 #include "DGtal/base/ConstAlias.h" 46 #include "DGtal/images/CConstImage.h" 47 #include "DGtal/base/CountedPtr.h" 48 #include "DGtal/topology/KhalimskySpaceND.h" 49 #include "DGtal/io/DrawWithDisplay3DModifier.h" 66 #ifndef DrawWithBoard3DTo2DModifier_h 79 CameraPosition(
const double x,
const double y,
const double z ):eyex(x), eyey(y), eyez(z)
83 double eyex, eyey, eyez;
99 CameraDirection(
const double x,
const double y,
const double z ): dirx(x), diry(y), dirz(z)
103 double dirx, diry, dirz;
119 CameraUpVector(
const double x,
const double y,
const double z ): upx(x), upy(y), upz(z)
124 double upx, upy, upz;
156 template <
typename Space,
typename KSpace>
174 myNewPoint1(aPoint1),
175 myNewPoint2(aPoint2),
176 myNewPoint3(aPoint3),
193 template <
typename Space,
typename KSpace>
209 double posXbottomLeft,
double posYbottomLeft,
double posZbottomLeft ): myIndex(anIndex),
210 myPosXBottomLeft(posXbottomLeft),
211 myPosYBottomLeft(posYbottomLeft),
212 myPosZBottomLeft(posZbottomLeft),
213 myNewDirection(newDir)
250 template <
typename TImageType,
typename TFunctor,
typename Space,
typename KSpace>
262 TTextureMode aMode = TTextureMode::GrayScaleMode): my2DImage(&anImage),
297 template <
typename TImageType,
typename TFunctor,
typename Space,
typename KSpace>
309 TTextureMode::GrayScaleMode): my3DImage(&anImage),
327 template <
typename Space,
typename KSpace>
342 double posXbottomLeft,
double posYbottomLeft,
double posZbottomLeft ):
343 myPosXBottomLeft(posXbottomLeft),
344 myPosYBottomLeft(posYbottomLeft),
345 myPosZBottomLeft(posZbottomLeft),
346 myNewDirection(newDir)
364 template<
typename TImageType,
typename TFunctor= functors::Cast<
unsigned int> >
383 double translateY=0,
double translateZ=0,
387 myTranslateX (translateX),
388 myTranslateY (translateY),
389 myTranslateZ (translateZ),
391 myRotationAngle(rotationAngle),
392 myRotationDir(dirRotation)
428 double translateY=0,
double translateZ=0 ): myIndex(anIndex),
429 myTranslateX (translateX),
430 myTranslateY (translateY),
431 myTranslateZ (translateZ)
450 template <
typename Space,
typename KSpace>
466 double posXbottomLeft,
double posYbottomLeft,
double posZbottomLeft ): myIndex(anIndex),
467 myPosXBottomLeft(posXbottomLeft),
468 myPosYBottomLeft(posYbottomLeft),
469 myPosZBottomLeft(posZbottomLeft),
470 myNewDirection(newDir)
489 #endif // !defined DrawWithViewer3DModifier_h 491 #undef DrawWithViewer3DModifier_RECURSES 492 #endif // else defined(DrawWithViewer3DModifier_RECURSES)
CameraUpVector class to set camera up-vector.
Translate2DDomain(unsigned int anIndex, double translateX=0, double translateY=0, double translateZ=0)
CameraZNearFar class to set near and far distance.
CameraDirection(const double x, const double y, const double z)
CameraZNearFar(const double near, const double far)
Aim: This class encapsulates its parameter class so that to indicate to the user that the object/poin...
Base class specifying the methods for classes which intend to modify a Viewer3D stream.
const TImageType * myImage
class to modify the position and orientation of an textured 2D image.
CameraDirection class to set camera direction.
std::string className() const
Base class specifying the methods for classes which intend to modify a Viewer3D stream.
Viewer3D< Space, KSpace >::ImageDirection myNewDirection
UpdateImage3DEmbedding(unsigned int anIndex, typename Space::Point aPoint1, typename Space::Point aPoint2, typename Space::Point aPoint3, typename Space::Point aPoint4)
Viewer3D< Space, KSpace >::TextureMode TTextureMode
UpdateImageData(unsigned int anIndex, ConstAlias< TImageType > anImage, double translateX=0, double translateY=0, double translateZ=0, double rotationAngle=0.0, typename Viewer3D<>::ImageDirection dirRotation=Viewer3D<>::zDirection, Clone< TFunctor > aFunctor=TFunctor())
Viewer3D< Space, KSpace >::ImageDirection myNewDirection
Viewer3D< Space, KSpace >::ImageDirection myNewDirection
Aim: This class encapsulates its parameter class to indicate that the given parameter is required to ...
CameraUpVector(const double x, const double y, const double z)
const TImageType * my3DImage
CameraPosition class to set camera position.
class to insert a custom 3D textured image by using a conversion functor and allows to change the def...
class to modify the position and orientation of an textured 2D image.
DGtal is the top-level namespace which contains all DGtal functions and types.
Update2DDomainPosition(unsigned int anIndex, typename Viewer3D< Space, KSpace >::ImageDirection newDir, double posXbottomLeft, double posYbottomLeft, double posZbottomLeft)
AddTextureImage3DWithFunctor(ConstAlias< TImageType > anImage, Clone< TFunctor > aFunctor, TTextureMode aMode=TTextureMode::GrayScaleMode)
UpdateImagePosition(unsigned int anIndex, typename Viewer3D< Space, KSpace >::ImageDirection newDir, double posXbottomLeft, double posYbottomLeft, double posZbottomLeft)
class to modify the data of an given image and also the possibility to translate it (optional)...
class to modify the 3d embedding of the image (useful to display not only 2D slice images)...
AddTextureImage2DWithFunctor(ConstAlias< TImageType > anImage, Clone< TFunctor > aFunctor, TTextureMode aMode=TTextureMode::GrayScaleMode)
CameraPosition(const double x, const double y, const double z)
class to modify the position and orientation of an 2D domain.
UpdateLastImagePosition(typename Viewer3D< Space, KSpace >::ImageDirection newDir, double posXbottomLeft, double posYbottomLeft, double posZbottomLeft)
ImageDirection
the 3 possible axes for the image direction
class to insert a custom 2D textured image by using a conversion functor and allows to change the def...
TextureMode
the modes of representation of an image
class to modify the data of an given image and also the possibility to translate it (optional)...
Aim: Defines the concept describing a read-only image, which is a refinement of CPointFunctor.
const TImageType * my2DImage
Viewer3D< Space, KSpace >::TextureMode TTextureMode
Viewer3D ::ImageDirection myRotationDir