Click or drag to resize
PoPieChartRep Class

Class to build a 3D pie chart.

Inheritance Hierarchy

Namespace: OIV.MeshViz.Graph
Assembly: OIV.MeshViz (in OIV.MeshViz.dll) Version: 2024.1.1.0 (2024.1.1)
Syntax
public class PoPieChartRep : PoChart

The PoPieChartRep type exposes the following members.

Constructors
  NameDescription
Public methodPoPieChartRep

Constructor.

Top
Methods
  NameDescription
Public methodAffectsState

Returns true if a node has an effect on the state during traversal.

(Inherited from SoNode.)
Public methodCallback
(Inherited from SoBaseKit.)
Public methodCopy
Calls Copy(false).
(Inherited from SoNode.)
Public methodCopy(Boolean)

Creates and returns an exact copy of the node.

(Inherited from SoNode.)
Public methodCopyFieldValues(SoFieldContainer)
Calls CopyFieldValues(fc, false).
(Inherited from SoFieldContainer.)
Public methodCopyFieldValues(SoFieldContainer, Boolean)

Copies the contents of fc's fields into this object's fields.

(Inherited from SoFieldContainer.)
Public methodCreatePathToPart(String, Boolean)
Calls CreatePathToPart(partName, makeIfNeeded, (OIV.Inventor.SoPath ^)nullptr).
(Inherited from SoBaseKit.)
Public methodCreatePathToPart(String, Boolean, SoPath)

Returns a path that begins at this nodekit and ends at partName.

(Inherited from SoBaseKit.)
Public methodDispose
Releases all resources used by SoDisposable.
(Inherited from SoDisposable.)
Public methodDistribute
(Inherited from SoNode.)
Public methodDoAction
(Inherited from SoBaseKit.)
Public methodEnableNotify

Notification at this Field Container is enabled (if flag == true) or disabled (if flag == false).

(Inherited from SoFieldContainer.)
Public methodEquals
Determines whether the specified Object is equal to the current Object.
(Inherited from Object.)
Public methodFieldsAreEqual

Returns true if this object's fields are exactly equal to fc's fields.

(Inherited from SoFieldContainer.)
Public methodGet

Returns the values of the fields of this object in the Open Inventor ASCII file format in the given string.

(Inherited from SoFieldContainer.)
Public methodGetAllFields

Returns a list of fields, including the eventIn's and eventOut's.

(Inherited from SoFieldContainer.)
Public methodGetAlternateRep

This method is called by actions to allow the node to provide an "alternate representation" when appropriate (typically depending on the action type).

(Inherited from SoNode.)
Public methodGetBoundingBox
(Inherited from SoBaseKit.)
Public methodStatic memberGetClassNodekitCatalog

Returns the OIV.Inventor.Nodekits.SoNodekitCatalog for this class.

Public methodGetDomain

Gets a reference to a OIV.MeshViz.Graph.PbDomain object used to define the data limits of the graphics to be generated.

(Inherited from PoBase.)
Public methodGetEventIn

Returns a the eventIn with the given name.

(Inherited from SoFieldContainer.)
Public methodGetEventOut

Returns the eventOut with the given name.

(Inherited from SoFieldContainer.)
Public methodGetField

Returns a the field of this object whose name is fieldName.

(Inherited from SoFieldContainer.)
Public methodGetFieldName

Returns the name of the given field in the fieldName argument.

(Inherited from SoFieldContainer.)
Public methodGetFields

Appends references to all of this object's fields to resultList, and returns the number of fields appended.

(Inherited from SoFieldContainer.)
Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetMatrix
(Inherited from SoBaseKit.)
Public methodGetName

Returns the name of an instance.

(Inherited from SoBase.)
Public methodGetNodekitCatalog (Inherited from SoBaseKit.)
Public methodGetPart

Searches the nodekit catalog (and those of all nested nodekits) for the part named partName.

(Inherited from SoBaseKit.)
Public methodGetPartString

Given a node or a path to a node, checks if the part exists in the nodekit, in a nested nodekit, or an element of a list part.

(Inherited from SoBaseKit.)
Public methodGetPickedSliceNumber

Allow the user to retreive the slice number (sliceNumber argument) which has been picked from a picked path (path argument) (cf OIV.Inventor.Nodes.SoSelection node for more information about picking).

Public methodGetPrimitiveCount
(Inherited from SoBaseKit.)
Public methodGetRenderEngineMode

Returns the supported Render engine mode.

(Inherited from SoNode.)
Public methodGetRenderUnitID
(Inherited from SoNode.)
Public methodGetSliceToTranslate

Gets the current translation of a slice.

Public methodGetStringName (Inherited from SoBase.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetUpdateMethod

Gets update method.

(Inherited from PoBase.)
Public methodGetViewportIsEnabled (Inherited from SoBaseKit.)
Public methodGetViewportOrigin (Inherited from SoBaseKit.)
Public methodGetViewportSize (Inherited from SoBaseKit.)
Public methodGLRender
(Inherited from SoBaseKit.)
Public methodGLRenderBelowPath
(Inherited from SoNode.)
Public methodGLRenderInPath
(Inherited from SoNode.)
Public methodGLRenderOffPath
(Inherited from SoNode.)
Public methodGrabEventsCleanup
(Inherited from SoNode.)
Public methodGrabEventsSetup
(Inherited from SoNode.)
Public methodHandleEvent
(Inherited from SoBaseKit.)
Public methodHasDefaultValues

Returns true if all of the object's fields have their default values.

(Inherited from SoFieldContainer.)
Public methodIsBoundingBoxIgnoring

Returns true if bounding box computation should be ignored during OIV.Inventor.Actions.SoGetBoundingBoxAction traversal.

(Inherited from SoBaseKit.)
Public methodIsBuilt

Indicates if the node kit has been built at least once.

(Inherited from PoBase.)
Public methodIsModified

Return true, if the kit has been modified, else otherwise.

(Inherited from PoBase.)
Public methodIsNotifyEnabled

Notification is the process of telling interested objects that this object has changed.

(Inherited from SoFieldContainer.)
Public methodIsOverride

Returns the state of the override flag.

(Inherited from SoNode.)
Public methodIsSynchronizable

Gets the ScaleViz synchronizable state of this object.

(Inherited from SoBase.)
Public methodPick
(Inherited from SoNode.)
Public methodRayPick
(Inherited from SoBaseKit.)
Public methodRebuild

Forces the node kit to be rebuilt immediately.

(Inherited from PoBase.)
Public methodSearch
(Inherited from SoBaseKit.)
Public methodSet(String)

This function allows field values of parts (nodes) to be set in several different parts simultaneously.

(Inherited from SoBaseKit.)
Public methodSet(String, String)

This function allows field values of parts (nodes) to be set.

(Inherited from SoBaseKit.)
Public methodSetDomain

Sets a reference to a OIV.MeshViz.Graph.PbDomain object used to define the data limits of the graphics to be generated.

(Inherited from PoBase.)
Public methodSetName (Inherited from SoBase.)
Public methodSetOverride

Turns the override flag on or off.

(Inherited from SoNode.)
Public methodSetPart

Inserts the given node (not a copy) as the new part specified by partName.

(Inherited from SoBaseKit.)
Public methodSetSliceToTranslate

Convenience methods to set the fields sliceToTranslateNumber and sliceToTranslateRadius.

Public methodSetSynchronizable

Sets this to be a ScaleViz synchronizable object.

(Inherited from SoBase.)
Public methodSetToDefaults

Sets all fields in this object to their default values.

(Inherited from SoFieldContainer.)
Public methodSetUpdateMethod

Sets scene graph update method.

(Inherited from PoBase.)
Public methodToString
Converts this SoBase structure to a human readable string.
(Inherited from SoBase.)
Public methodTouch

Marks an instance as modified, simulating a change to it.

(Inherited from SoNode.)
Public methodTouchKit

Indicates the node kit is modified.

(Inherited from PoBase.)
Public methodWrite
(Inherited from SoBaseKit.)
Top
Properties
  NameDescription
Public propertyannoDistToCenter

Defines the distance from the pie chart center of the displayed annotations (name/value/percentage).

Public propertyannoFontSize

Define the font size of the annotation.

Public propertyannoHeightFromSlice

Defines the height of the displayed annotations (name/value/percentage) from the top of each slice.

Public propertyboundingBoxIgnoring

Whether to ignore this node during bounding box traversal.

(Inherited from SoBaseKit.)
Public propertycolorBinding

Specify how the colors are bound to the representation.

(Inherited from PoChart.)
Public propertycolorValuesIndex

Defines the index of the set of values for the coloring.

(Inherited from PoChart.)
Public propertyheight

Defines the height of the pie chart if the field yValuesIndex is different from -1.

Public propertyisAnnoSliceColor

Determines if the color of for annotation is the same as slices.

Public propertyIsDisposable
ISafeDisposable interface implementation.
(Inherited from SoDisposable.)
Public propertyisNameVisible

Defines if the name of each slice is visible.

Public propertyisPercentageVisible

Defines if the percentage of each slice is visible.

Public propertyisValueVisible

Defines if the value of each slice is visible.

Public propertymaterial

Defines the list of materials used for the coloring.

(Inherited from PoChart.)
Public propertyradiusMax

Defines the maximum radius of the pie chart.

Public propertyradiusMin

Defines the mininum radius of the pie chart.

Public propertysliceToTranslateNumber

Numbers (slice numbers begin at 0) of the slices to translate.

Public propertysliceToTranslateRadius

Translation values along the bisectors of the slices.

Public propertystringsIndex

Defines the index of the set of strings used for the names attached to slices.

Public propertyUserData
Gets or sets the user data to be contained by the field container.
(Inherited from SoFieldContainer.)
Public propertyyValuesIndex

Defines the index of the set of values used by a charting representation as a y-coordinate of each mesh node.

(Inherited from PoChart.)
Top
Events
  NameDescription
Public eventPostRebuild
(Inherited from PoBase.)
Public eventPreRebuild
(Inherited from PoBase.)
Top
Remarks

Builds a 3D pie chart on 1D mesh (OIV.MeshViz.Nodes.PoIrregularMesh1D or OIV.MeshViz.Nodes.PoRegularMesh1D). The size (angle) of each slice is given by the geometry of the current mesh 1D, and the height of each slice is given by one of the value-set of the current mesh 1D specified by the field yValuesIndex. Names attached to each slice are given by one of the string-set of the current mesh 1D specified by the field stringsIndex. With this mecanism all slices have not necessary the same height. On contrary, if all slices must have the same height, set the field yValuesIndex to -1 and set the field height to the desired height. The pie chart origin is at (0,0,0) after applying the current transformation.

The current label hints (OIV.MeshViz.Nodes.PoLabelHints) is used to specify the appearance of annotations for each slice. All annotations depend on the current miscellaneous text attributes which defines the font names, line length and so on (OIV.MeshViz.Nodes.PoMiscTextAttr). All numerical values depend on the current numerical display format (OIV.MeshViz.Nodes.PoNumericDisplayFormat). Each slice can be beveled thanks to the current beveled edge values (OIV.MeshViz.Nodes.PoBevelEdge). The current complexity (OIV.Inventor.Nodes.SoComplexity) is used to determine the tessellation of slices.

The interpretation of colorBinding is the following :

  • INHERITED: All slices are colored with the same inherited color.

  • PER_PART, PER_VERTEX: A color is used for each slice.

FILE FORMAT/DEFAULT

OIV.MeshViz.Graph.PoPieChartRep {
colorBinding INHERITED
yValuesIndex -1
colorValuesIndex 1
material NULL
stringsIndex 0
radiusMin 0.0
radiusMax 1.0
sliceToTranslateNumber 0
sliceToTranslateRadius 0.0
height 0.3
isNameVisible false
isValueVisible false
isPercentageVisible true
annoDistToCenter 0.5
annoHeightFromSlice 0.2
isAnnoSliceColor true
annoFontSize 0.1
}

<html> <head> <title></title> </head> <body> <h4><a name="Heading249">CATALOG PARTS</a></h4> <blockquote> <b>PoPieChartRep</b> { </blockquote> <blockquote> <blockquote> <b>Separator</b> <tt>alternateRep</tt> (from PoBase) { </blockquote> <blockquote> <blockquote> <b>AppearanceKit</b> <tt>appearance</tt> (from PoBase) </blockquote> </blockquote> <blockquote> <blockquote> <i>Specifies the appearance of all the kit. By default lightModel.model=PHONG.</i> </blockquote> </blockquote> <blockquote> <blockquote> <b>MatrixTransform</b> <tt>domainTransform</tt> (from PoBase) </blockquote> </blockquote> <blockquote> <blockquote> <i>Corresponds to the domain transformation.</i> <b>Separator</b> <tt>sliceSep</tt> { <i>Contains properties and shapes to draw the slices.</i> <ul> <b>AppearanceKit</b> <tt>sliceApp</tt> </ul> <ul> <i>Specifies the appearance of the slices.</i> </ul> <ul> <b>Group</b> <tt>slice</tt> </ul> <ul> <i>Contains a list of couple SoMaterial and SoIndexedFaceSet shapes to draw the slices.</i> </ul> } <b>Separator</b> <tt>annotationSep</tt> { <i>Contains properties and shapes to draw the annotations.</i> <ul> <b>AppearanceKit</b> <tt>annotationApp</tt> </ul> <ul> <i>Specifies the appearance of the annotations. font.size and font.name are set when the kit is rebuilt. </i> </ul> <ul> <b>Group</b> <tt>annotation</tt> </ul> <blockquote> <i>Contains a list of couple SoMaterial and SoText3/SoAnnoText3/SoAsciiText (cf PoBase.setTextType() and PoBase.setVRML2Mode() for choosing the text type) if the field colorBinding is different from INHERITED and the field isAnnoSliceColor is set to true, a list of SoText3/SoAnnoText3/SoAsciiText otherwise.</i> </blockquote> } <b>Separator</b> <tt>annotationLineSep</tt> { <i>Contains properties and shapes to draw lines from the annotations to the slices.</i> <ul> <b>AppearanceKit</b> <tt>annotationLineApp</tt> </ul> <ul> <i>Specifies the appearance of the lines.</i> </ul> <ul> <b>Group</b> <tt>annotationLine</tt> </ul> <ul> <i>Contains a list of couple SoMaterial and SoLineSet shape to draw the label lines if the field colorBinding is different from INHERITED and the field isAnnoSliceColor is set to true, a list of SoLineSet otherwise.</i> </ul> } </blockquote> } </blockquote> </blockquote> <blockquote> } </blockquote> </body> </html>

See Also