15#include <ThirdPartyWarningsDisable.h> 
   17#include <Inventor/nodes/SoShape.h> 
   18#include <Inventor/fields/SoSFBool.h> 
   19#include <Inventor/fields/SoSFVec3f.h> 
   20#include <Inventor/fields/SoSFFloat.h> 
   21#include <Inventor/fields/SoSFDouble.h> 
   22#include <Inventor/fields/SoSFColor.h> 
   23#include <Inventor/fields/SoSFEnum.h> 
   24#include <Inventor/fields/SoSFNode.h> 
   29#include <ThirdPartyWarningsRestore.h> 
   39    return (
number < 0) ? -1.f : 1.f;
 
  136    const auto margin = 3.0f;
 
  143    const auto bx0 = 
otherLabel.screenBoundingBox[0][0] - margin;
 
  144    const auto by0 = 
otherLabel.screenBoundingBox[0][1] - margin;
 
  145    const auto bx1 = 
otherLabel.screenBoundingBox[1][0] + margin;
 
  146    const auto by1 = 
otherLabel.screenBoundingBox[1][1] + margin;
 
 
 
  239  std::vector<CoordinateAxis> axes;
 
  242  void initializeAxes();
 
  243  void applyUserTransform();
 
  246  void computeAndSetTickDirections();
 
  248  float computeTextShiftFactor(
float angle0, 
float angle1);
 
  249  void computeAndSetLabelVisibility(std::vector<Label>& 
labels);
 
  251  float getTickScale();
 
  252  int getEndTickModifier(
int numTicks, 
float length);
 
  255  double getAutoStride(
float maxRange);
 
  256  double getUserStride(
float maxRange);
 
  257  float getMaxAxisRange();
 
  259  bool anyLabelOverlap(
const std::vector<Label>& 
labels);
 
  260  void generatePrimitives(
SoAction *)
 override {}
 
  263  void glRenderTicks();
 
  264  void glRenderAxisLines();
 
  265  void glRenderOrigin();
 
  272  void updateFromInputInventorScene();
 
  273  void updateFromInputImage();
 
  276  SbMatrix getImageVoxelToWorldMatrix();
 
 
SoSFBool useVoxelAlignedBoundingBox
 
SoSFTypedEnum< EndTickMode > endTickMode
 
SoSFColor numbersFontColor
 
SoSFFloat lettersFontAlpha
 
SoSFTypedEnum< UserTransformMode > userTransformMode
 
SoSFFloat arrowLengthFactor
 
SoSFFloat numbersFontAlpha
 
SoSFTypedEnum< StrideMode > strideMode
 
@ APPLY_USER_TRANSFORM_TO_INPUT
 
@ USER_TRANSFORM_INSTEAD_OF_INPUT
 
SoSFColor textShadowColor
 
SoSFFloat letterOffsetFactor
 
~SoCoordinateSystem() override
 
SoSFColor lettersFontColor
 
SoSFFloat lettersFontSizeOffset
 
The SoSFMLImage field is the interface used by Inventor Nodes to access image data (in the current im...
 
Target mlrange_cast(Source arg)
Generic version of checked ML casts.
 
bool isMaxPointingToScreenZ
 
void setWorldPositions(const SbVec3f &start, const SbVec3f &end)
 
void setScreenPositions(const SbVec3f &start, const SbVec3f &end)
 
CoordinateAxis(const SbVec3f &worldStart, const SbVec3f &worldEnd, const std::string &label, int logicalDirection)
 
float renderLengthForArrowPlacement
 
SbVec2f textShiftFactorScreen
 
void initializeScreenBoundingBox()
 
bool overlaps(const Label &otherLabel) const
 
SbVec2f screenBoundingBox[2]