Class PoAutoCubeAxis
- java.lang.Object
-
- All Implemented Interfaces:
SafeDisposable
public class PoAutoCubeAxis extends PoBaseAxis
Class to build a set of axes on a parallelepiped relating to the view. This class builds a set of 3D axes displayed on some of the 12 edges of a parallelepiped. The choice of the edges depends on the view defined by the current camera (seeSoCamera
class). The graduations and the title of the axes are always legible whatever the view definition. The two points (start and end fields) define the diagonal of the parallelepiped and only the edges which are intersecting a visible face and an invisible face will be graduated. The visible and invisible faces depend on the view definition. The visible faces of the parallelepiped are the back faces.1-----------2 Y /| (2) /| | / | / | | / | (5) / | Vertices numerotation. | 6----------5 | ----- X | | | (1) | / |(3) 0----|------3 / | / | (4) / / | / | / Z |/ (0) | / 7----------4 Face 0 : 4 5 6 7 ==> edges : (4,5) (5,6) (6,7) (7,4) Face 1 : 2 3 4 5 ==> edges : (2,3) (3,4) (4,5) (5,2) Face 2 : 0 1 2 3 ==> edges : (0,1) (1,2) (2,3) (3,0) Face 3 : 0 1 6 7 ==> edges : (0,1) (1,6) (6,7) (7,0) Face 4 : 0 3 4 7 ==> edges : (0,3) (3,4) (4,7) (7,0) Face 5 : 1 2 5 6 ==> edges : (1,2) (2,5) (5,6) (6,1) The graduations of these axes are defined by the fields
gradStart
andgradEnd
. However if these fields are equal, the fieldsstart
andend
are used to define the graduation values. Furthermore, the fieldsgradStart
andgradEnd
are always ignored for axis typeGENERALIZED
.File format/default:
start 0 0 0 end 1 1 1 gradStart 0 0 0 gradEnd 0 0 0 xTitle "" yTitle "" zTitle "" isGridLinesXVisible false isGridLinesYVisible false isGridLinesZVisible false isBackgroundFacesVisible false isIntersectingGradsVisible false modellingMatrix 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 viewingMatrix 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 projectionMatrix 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1"> <META NAME="GENERATOR" CONTENT="Mozilla/4.04 [en] (X11; I; SunOS 5.6 sun4u) [Netscape]"> <LINK REL="stylesheet" TYPE="text/css" HREF="../../stylesheet.css" TITLE="Style"> </HEAD> <BODY> <H4> <A NAME="Heading652"></A>CATALOG PARTS</H4> <CENTER><IMG SRC="../../images/autoCubeNum.gif" ></CENTER> <CENTER><B></B> </CENTER> <UL><B>PoAutoCubeAxis</B> {</UL> <UL> <UL><B>Separator</B> <TT>alternateRep</TT> (from PoBase) {</UL> </UL> <UL> <UL> <UL><B>AppearanceKit</B> <TT>appearance</TT> (from PoBase)</UL> </UL> </UL> <UL> <UL> <UL><I>Specifies the appearance of all the kit. By default lightModel.model=BASE_COLOR.</I></UL> </UL> </UL> <UL> <UL> <UL><B>MatrixTransform</B> <TT>domainTransform</TT> (from PoBase)</UL> </UL> </UL> <UL> <UL> <UL><I>Corresponds to the domain transformation.</I></UL> </UL> </UL> <UL> <UL> <UL><B>Separator</B> <TT>backgroundFaceSep</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL><I>Contains properties and shapes to draw visible faces.</I></UL> </UL> </UL> <UL> <UL> <UL> <UL><B>AppearanceKit</B> <TT>backgroundFaceApp </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Specifies the appearance of visible faces. By default lightModel.model=PHONG.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><B>Group</B> <TT>backgroundFace </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Contains a SoFaceSet shape to draw the visible faces.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <P><B>Separator</B> <TT>mainGradGridSep</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL><I>Contains properties and shapes to draw grid lines of main graduations.</I></UL> </UL> </UL> <UL> <UL> <UL> <UL><B>AppearanceKit</B> <TT>mainGradGridApp </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Specifies the appearance of grid lines of main graduations.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><B>Group</B> <TT>mainGradGrid </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Contains a SoLineSet shape to draw the grid lines of main graduations.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Separator</B> <TT>subGradGridSep</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL><I>Contains properties and shapes to draw grid lines of sub graduations.</I></UL> </UL> </UL> <UL> <UL> <UL> <UL><B>AppearanceKit</B> <TT>subGradGridApp </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Specifies the appearance of grid lines of sub graduations.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><B>Group</B> <TT>subGradGrid </TT>(from PoAutoCubeAxis)</UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Contains a SoLineSet shape to draw the grid lines of sub graduations.</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <P><B>Switch</B> <TT>xAxisSwitch03</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>xAxis03</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the X-Axis with vertices 0-3</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>xAxisSwitch12</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>xAxis12</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the X-Axis with vertices 1-2</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>xAxisSwitch65</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>xAxis65</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the X-Axis with vertices 6-5</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>xAxisSwitch74</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>xAxis74</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the X-Axis with vertices 7-4</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>yAxisSwitch01</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>yAxis01</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Y-Axis with vertices 0-1</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>yAxisSwitch76</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>yAxis76</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Y-Axis with vertices 7-6</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>yAxisSwitch45</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>yAxis45</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Y-Axis with vertices 4-5</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>yAxisSwitch32</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>yAxis32</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Y-Axis with vertices 3-2</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>zAxisSwitch07</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>zAxis07</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Z-Axis with vertices 0-7</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>zAxisSwitch34</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>zAxis34</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Z-Axis with vertices 3-4</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>zAxisSwitch25</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>zAxis25</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Z-Axis with vertices 2-5</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>} <BR><B>Switch</B> <TT>zAxisSwitch16</TT> (from PoAutoCubeAxis) {</UL> </UL> </UL> <UL> <UL> <UL> <UL><B>PoLinearAxis/PoLogAxis/PoGenAxis</B> <TT>zAxis16</TT></UL> </UL> </UL> </UL> <UL> <UL> <UL> <UL><I>Corresponds to the Z-Axis with vertices 1-6</I></UL> </UL> </UL> </UL> <UL> <UL> <UL>}</UL> </UL> </UL> <UL> <UL>}</UL> </UL> <UL>}</UL> </BODY> </HTML>
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
PoAutoCubeAxis.AxisTypes
Type of axes on the parallelepiped edges.-
Nested classes/interfaces inherited from class com.openinventor.meshviz.graph.PoBase
PoBase.NodeWriteFormats, PoBase.TextTypes, PoBase.UpdateMethodTypes
-
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModes
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
Fields Modifier and Type Field Description SoSFVec3f
end
End point of the parallelepiped's diagonal.SoSFVec3f
gradEnd
Defines the value of the graduation (tick label) corresponding to the end point of this group of axes.SoSFVec3f
gradStart
Defines the value of the graduation (tick label) corresponding to the starting point of this group of axes.SoSFBool
isBackgroundFacesVisible
Sets the visibility of visible faces.SoSFBool
isGridLinesXVisible
Sets the visibility of the grid lines of the X axes displayed on the visible faces.SoSFBool
isGridLinesYVisible
Sets the visibility of the grid lines of the Y axes displayed on the visible faces.SoSFBool
isGridLinesZVisible
Sets the visibility of the grid lines of the Z axes displayed on the visible faces.SoSFBool
isIntersectingGradsVisible
Given A1 and A2 2 consecutive axes with the first (the last) graduation of A1 intersects the first or the last graduation of A2.SoSFMatrix
modellingMatrix
This modelling matrix is used to determine the visibility of each face (and thus the axes to draw).SoSFMatrix
projectionMatrix
This modelling matrix is used to determine the visibility of each face (and thus the axes to draw).SoSFVec3f
start
Start point of the parallelepiped's diagonal.SoSFMatrix
viewingMatrix
This viewing matrix is used to determine the visibility of each face (and thus the axes to draw).SoSFString
xTitle
Title of the X axes.SoSFString
yTitle
Title of the Y axes.SoSFString
zTitle
Title of the Z axes.-
Fields inherited from class com.openinventor.inventor.nodekits.SoBaseKit
boundingBoxIgnoring
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description PoAutoCubeAxis()
Default constructor.PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, (java.lang.String)null, (java.lang.String)null, (java.lang.String)null).PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, xTtle, (java.lang.String)null, (java.lang.String)null).PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle, java.lang.String yTtle)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, xTtle, yTtle, (java.lang.String)null).PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle, java.lang.String yTtle, java.lang.String zTtle)
Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static SoNodekitCatalog
getClassNodekitCatalog()
Returns theSoNodekitCatalog
for this class.void
GLRender(SoGLRenderAction action)
Forces node-kit rebuilding.-
Methods inherited from class com.openinventor.meshviz.graph.PoBase
addPostRebuildCallback, addPreRebuildCallback, getDomain, getNodeWriteFormat, getTextType, getUpdateMethod, isBuilt, isModified, isVRML2Mode, rebuild, setDomain, setNodeWriteFormat, setTextType, setUpdateMethod, setVRML2Mode, touchKit
-
Methods inherited from class com.openinventor.inventor.nodekits.SoBaseKit
getNodekitCatalog, getPart, getPart, getPartString, getViewportIsEnabled, getViewportOrigin, getViewportSize, isSearchingChildren, set, set, setPart, setSearchingChildren
-
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
-
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, setToDefaults
-
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
-
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
-
-
-
Field Detail
-
start
public final SoSFVec3f start
Start point of the parallelepiped's diagonal. (0,0,0) by default.
-
end
public final SoSFVec3f end
End point of the parallelepiped's diagonal. (1,1,1) by default.
-
gradStart
public final SoSFVec3f gradStart
Defines the value of the graduation (tick label) corresponding to the starting point of this group of axes. SeePoCartesianAxis.gradStart
for details.- Since:
- Open Inventor 9.5.1
-
gradEnd
public final SoSFVec3f gradEnd
Defines the value of the graduation (tick label) corresponding to the end point of this group of axes. SeePoCartesianAxis.gradEnd
for details.- Since:
- Open Inventor 9.5.1
-
xTitle
public final SoSFString xTitle
Title of the X axes. Empty by default.
-
yTitle
public final SoSFString yTitle
Title of the Y axes. Empty by default.
-
zTitle
public final SoSFString zTitle
Title of the Z axes. Empty by default.
-
isGridLinesXVisible
public final SoSFBool isGridLinesXVisible
Sets the visibility of the grid lines of the X axes displayed on the visible faces. (The attributes of grid lines ofPoAxis
cannot be used because the graduations of thes axes are not necessarily in the same plane than the visible faces). false by default.
-
isGridLinesYVisible
public final SoSFBool isGridLinesYVisible
Sets the visibility of the grid lines of the Y axes displayed on the visible faces. (The attributes of grid lines ofPoAxis
cannot be used because the graduations of thes axes are not necessarily in the same plane than the visible faces). false by default.
-
isGridLinesZVisible
public final SoSFBool isGridLinesZVisible
Sets the visibility of the grid lines of the Z axes displayed on the visible faces. (The attributes of grid lines ofPoAxis
cannot be used because the graduations of thes axes are not necessarily in the same plane than the visible faces). false by default.
-
isBackgroundFacesVisible
public final SoSFBool isBackgroundFacesVisible
Sets the visibility of visible faces. false by default.
-
isIntersectingGradsVisible
public final SoSFBool isIntersectingGradsVisible
Given A1 and A2 2 consecutive axes with the first (the last) graduation of A1 intersects the first or the last graduation of A2. This flag allows the application to suppress or not the first (the last) graduation of A1. The attribute tickFirstGrad (tickLastGrad) ofPoAxis
is used to suppress the first (the last) graduation. false by default.
-
modellingMatrix
public final SoSFMatrix modellingMatrix
This modelling matrix is used to determine the visibility of each face (and thus the axes to draw). Each time anSoGLRenderAction
, anSoCallbackAction
, anSoRayPickAction
or anSoVectorizeAction
traverse this node, this matrix is set to the current modelling matrix and the axes are rebuilt.
-
viewingMatrix
public final SoSFMatrix viewingMatrix
This viewing matrix is used to determine the visibility of each face (and thus the axes to draw). Each time anSoGLRenderAction
, anSoCallbackAction
, anSoRayPickAction
or anSoVectorizeAction
traverse this node, this matrix is set to the current viewing matrix and the axes are rebuilt. viewingMatrix depends on the current camera.
-
projectionMatrix
public final SoSFMatrix projectionMatrix
This modelling matrix is used to determine the visibility of each face (and thus the axes to draw). Each time anSoGLRenderAction
, anSoCallbackAction
, anSoRayPickAction
or anSoVectorizeAction
traverse this node, this matrix is set to the current projection matrix and the axes are rebuilt. projectionMatrix depends on the current camera.
-
-
Constructor Detail
-
PoAutoCubeAxis
public PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle, java.lang.String yTtle)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, xTtle, yTtle, (java.lang.String)null).
-
PoAutoCubeAxis
public PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, xTtle, (java.lang.String)null, (java.lang.String)null).
-
PoAutoCubeAxis
public PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType)
Calls PoAutoCubeAxis(_start, _end, xAxisType, yAxisType, zAxisType, (java.lang.String)null, (java.lang.String)null, (java.lang.String)null).
-
PoAutoCubeAxis
public PoAutoCubeAxis()
Default constructor.
-
PoAutoCubeAxis
public PoAutoCubeAxis(SbVec3f _start, SbVec3f _end, PoAutoCubeAxis.AxisTypes xAxisType, PoAutoCubeAxis.AxisTypes yAxisType, PoAutoCubeAxis.AxisTypes zAxisType, java.lang.String xTtle, java.lang.String yTtle, java.lang.String zTtle)
Constructor. (By default the X, Y, and Z axes are linear).
-
-
Method Detail
-
GLRender
public void GLRender(SoGLRenderAction action)
Forces node-kit rebuilding. SeePoBase
.
-
getClassNodekitCatalog
public static SoNodekitCatalog getClassNodekitCatalog()
Returns theSoNodekitCatalog
for this class.
-
-