Click or drag to resize
PbDomain Class

Class to define a domain.

Inheritance Hierarchy
SystemObject
  OIV.InventorSoNetBase
    OIV.MeshViz.GraphPbBase
      OIV.MeshViz.GraphPbDomain

Namespace: OIV.MeshViz.Graph
Assembly: OIV.MeshViz (in OIV.MeshViz.dll) Version: 2023.1.3.0 (2023.1.3)
Syntax
public class PbDomain : PbBase

The PbDomain type exposes the following members.

Constructors
Methods
  NameDescription
Public methodCopyFrom(PbBase)

Assignment operator.

(Inherited from PbBase.)
Public methodCopyFrom(PbDomain)

Assignment operator.

Public methodEnableConnection

Activates/deactivates the mechanism of connection.

(Inherited from PbBase.)
Public methodEquals
(Overrides ObjectEquals(Object).)
Public methodGetDomain(SbBox2f)

Gets the 2D domain.

Public methodGetDomain(SbBox3f)

Gets the 3D domain.

Public methodGetDomain(Single, Single, Single, Single)

Gets the 2D domain.

Public methodGetDomain(Single, Single, Single, Single, Single, Single)

Gets the 3D domain.

Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetMatrix

Get the domain transform matrix in an OIV.Inventor.SbMatrix object.

Public methodGetMatrixTransform

Get the domain transform matrix in an OIV.Inventor.Nodes.SoMatrixTransform object.

Public methodGetTransform

Get the domain transform matrix in an OIV.Inventor.Nodes.SoTransform object.

Public methodGetTransformType

Gets the type of transformation.

Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodIsConnectionEnabled

Returns true if the connection mechanism is active, otherwise false.

(Inherited from PbBase.)
Public methodSetDomain(SbBox2f)
Calls SetDomain(box, OIV.MeshViz.Graph.PbDomain.BoundingBoxTypes( .PbDomain.AS_IS )).
Public methodSetDomain(SbBox3f)
Calls SetDomain(box, OIV.MeshViz.Graph.PbDomain.BoundingBoxTypes( .PbDomain.AS_IS )).
Public methodSetDomain(SbBox2f, PbDomainBoundingBoxTypes)

Sets a 2D domain.

Public methodSetDomain(SbBox3f, PbDomainBoundingBoxTypes)

Sets a 3D domain.

Public methodSetDomain(Single, Single, Single, Single)
Calls SetDomain(xmin, ymin, xmax, ymax, OIV.MeshViz.Graph.PbDomain.BoundingBoxTypes( .PbDomain.AS_IS )).
Public methodSetDomain(Single, Single, Single, Single, PbDomainBoundingBoxTypes)

Sets a 2D domain.

Public methodSetDomain(Single, Single, Single, Single, Single, Single)
Calls SetDomain(xmin, ymin, zmin, xmax, ymax, zmax, OIV.MeshViz.Graph.PbDomain.BoundingBoxTypes( .PbDomain.AS_IS )).
Public methodSetDomain(Single, Single, Single, Single, Single, Single, PbDomainBoundingBoxTypes)

Sets a 3D domain.

Public methodSetTransformType

Sets the type of transformation.

Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTouch

Simulates the changing of an instance of this object, so all connected objects are informed of this change.

(Inherited from PbBase.)
Top
Operators
  NameDescription
Public operatorStatic memberEquality
Public operatorStatic memberInequality
Top
Remarks

This class is used to define a 2D/3D domain. It is the reference of all Graph Master & 3D Data Master nodekits classes and some fields of these classes are expressed in a domain.

The domain usually defines the data coordinate limits of graphics to be generated. Graph Master & 3D Data Master do not calculate these limits, so this class provides them. In conceptual terms, a 2D domain (3D domain) is the smallest rectangle (parallelepiped) capable of containing the data for the image to be generated. The sides of this rectangle (parallelepiped) are parallel to the axis.Furthermore all Graph Master & 3D Data Master nodekits classes may be transformed according to the domain which they refer to.

There are five possible transformations (we note dx = xmax - xmin, dy = ymax - ymin and dz = zmax - zmin, xmin, ymin,..., zmax are the limits of the domain):

  • The transformation is a scaling and a translation (all representations are drawn between [0-1] x [0-1] x ([0-1])). (type of transformation = TRANSFORM_01).

  • All representations are scaled with scaling factors x = 1, y = dx/dy, z = dx/dz. (type of transformation = SCALE_X_FIXED).

  • All representations are scaled with scaling factors x = dy/dx, y =1, z = dy/dz. (type of transformation = SCALE_Y_FIXED).

  • All representations are scaled with scaling factors x = dz/dx, y = dz/dy, z = 1. (type of transformation = SCALE_Z_FIXED).

  • One of scale 2,3,4 is applied according to the max(dx,dy,dz). (type of transformation = SCALE_MAX_XYZ_FIXED).

Except the first transformation type, the others compute a scaling only if the domain is heterogeneous.

All methods concerning 2D domain, set the value zmin to 0 and the value zmax to 1. By default xmin = ymin = zmin = 0, xmax = ymax = zmax = 1 and the type of transformation is SCALE_X_FIXED.

Data given by the user to define the coordinates of the domain (xmin, ymin, zmin, xmax,...) can be interpreted if the user wants to. The interpretation of these data depends on the value of the last attribute (of type BoundingBoxType) of each method for setting domain coordinates. Values for this attribute can be :

  • AS_IS: Data are not interpreted. This is the default value.

  • MIN_BOUNDING_CUBE: The miminum bounding square(2D domain)/cube(3D domain) is computed from the user data to set the domain coordinates.

  • MAX_BOUNDED_CUBE: The maximum bounded square(2D domain)/cube(3D domain) is computed from the user data to set the domain coordinates.

See Also