
The OdbPart object is similar to the kernel Part object and contains nodes and elements, but not geometry.
odb.parts()[name]

This method creates an OdbPart object. Nodes and elements are added to this object at a later stage.
odb.Part
odb_Part&
Part(const odb_String& name,
odb_Enum::odb_DimensionEnum embeddedSpace,
odb_Enum::odb_PartTypeEnum type);Required arguments
An odb_String specifying the part name.
An odb_Enum::odb_DimensionEnum specifying the dimensionality of the OdbPart object. Possible values are odb_Enum::THREE_D, odb_Enum::TWO_D_PLANAR, and odb_Enum::AXISYMMETRIC.
An odb_Enum::odb_PartTypeEnum specifying the type of the OdbPart object. Possible values are odb_Enum::DEFORMABLE_BODY and odb_Enum::ANALYTIC_RIGID_SURFACE.
Optional arguments
Return value
An OdbPart object.
Exceptions

This method adds elements to an OdbPart object using element labels and nodal connectivity.
Warning: Adding elements not in ascending order of their labels may cause Abaqus/Viewer to plot contours incorrectly.
void
addElements(const odb_SequenceInt& labels,
const odb_SequenceSequenceInt& connectivity,
const odb_String& type,
const odb_String& elementSetName,
const odb_SectionCategory& sectionCategory);Required arguments
An odb_SequenceInt specifying the element labels.
An odb_SequenceSequenceInt specifying the nodal connectivity.
A String specifying the element type.
Optional arguments
A String specifying a name for this element set. The default value is the empty string.
A SectionCategory object for this element set.
Return value
Exceptions

This method adds nodes to an OdbPart object using node labels and coordinates.
Warning: Adding nodes not in ascending order of their labels may cause Abaqus/Viewer to plot contours incorrectly.
void
addNodes(const odb_SequenceInt& labels,
const odb_SequenceSequenceFloat& coordinates,
const odb_String& nodeSetName);Required arguments
An odb_SequenceInt specifying the node labels.
An odb_SequenceSequenceFloat specifying the nodal coordinates.
Optional argument
A String specifying a name for this node set. The default value is None.
Return value
Exceptions

This method assigns a beam section orientation to a region of a part instance.
void
assignBeamOrientation(const odb_Set& region,
odb_Enum::odb_OrientationMethodEnum method,
const odb_SequenceFloat& vector);Required arguments
An OdbSet specifying a region on an instance.
An odb_Enum::odb_OrientationMethodEnum specifying the assignment method. Only a value of odb_Enum::N1_COSINES is currently supported.
An odb_SequenceFloat specifying the approximate local
-direction of the beam cross-section.
Optional arguments
Return value
Exceptions

This method assigns a material orientation to a region of a part instance.
void
assignMaterialOrientation(const odb_Set& region,
const odb_DatumCsys& localCSys,
odb_Enum::odb_AxisEnum axis,
float angle,
odb_Enum::odb_StackDirectionEnum stackDirection);Required arguments
An OdbSet specifying a region on an instance.
An OdbDatumCsys object specifying the local coordinate system or None, indicating the global coordinate system.
Optional arguments
An odb_Enum::odb_AxisEnum specifying the axis of a cylindrical or spherical datum coordinate system about which an additional rotation is applied. For shells this axis is also the shell normal. Possible values are odb_Enum::AXIS_1, odb_Enum::AXIS_2, and odb_Enum::AXIS_3. The default value is odb_Enum::AXIS_1.
A Float specifying the angle of the additional rotation. The default value is 0.0.
An odb_Enum::odb_StackDirectionEnum specifying the stack or thickness direction of the material. Possible values are odb_Enum::STACK_1, odb_Enum::STACK_2, odb_Enum::STACK_3, and odb_Enum::STACK_ORIENTATION. The default value is odb_Enum::STACK_3.
Return value
Exceptions

This method assigns a rebar reference orientation to a region of a part instance.
void
assignRebarOrientation(const odb_Set& region,
const odb_DatumCsys& localCsys,
odb_Enum::odb_AxisEnum axis,
float angle);Required arguments
An OdbSet specifying a region on an instance.
An OdbDatumCsys object specifying the local coordinate system or None, indicating the global coordinate system.
Optional arguments
An odb_Enum::odb_AxisEnum specifying the axis of a cylindrical or spherical datum coordinate system about which an additional rotation is applied. For shells this axis is also the shell normal. Possible values are odb_Enum::AXIS_1, odb_Enum::AXIS_2, and odb_Enum::AXIS_3. The default value is odb_Enum::AXIS_1.
A Float specifying the angle of the additional rotation. The default value is 0.0.
Return value
Exceptions

This method is used to retrieved an element with a specific label from a part object.
odb_Element getElementFromLabel(int label);
Required argument
An Int specifying the element label.
Optional arguments
Return value
An OdbMeshElement object.
Exceptions
If no element with the specified label exists:

This method is used to retrieved a node with a specific label from a part object.
odb_Node getNodeFromLabel(int label);
Required argument
An Int specifying the node label.
Optional arguments
Return value
An OdbMeshNode object.
Exceptions
If no node with the specified label exists:

This method is used to define a two-dimensional AnalyticSurface object on the part object.
void
AnalyticRigidSurf2DPlanar(const odb_String& name,
const odb_SequenceAnalyticSurfaceSegment& profile,
double filletRadius);Required arguments
The name of the analytic surface.
A sequence of AnalyticSurfaceSegment objects or an OdbSequenceAnalyticSurfaceSegment object.
Optional argument
A Double specifying the radius of curvature to smooth discontinuities between adjoining segments. The default value is 0.0.
Return value
Exceptions
If OdbPart is of type THREE_D:

This method is used to define a three-dimensional cylindrical AnalyticSurface on the part object.
void
AnalyticRigidSurfExtrude(const odb_String& name,
const odb_SequenceAnalyticSurfaceSegment& profile,
double filletRadius);Required arguments
The name of the analytic surface.
A sequence of AnalyticSurfaceSegment objects or an OdbSequenceAnalyticSurfaceSegment object.
Optional argument
A Double specifying the radius of curvature to smooth discontinuities between adjoining segments. The default value is 0.0.
Return value
Exceptions
If OdbPart is not of type THREE_D:

This method is used to define a three-dimensional AnalyticSurface of revolution on the part object.
void
AnalyticRigidSurfRevolve(const odb_String& name,
const odb_SequenceAnalyticSurfaceSegment& profile,
double filletRadius);Required arguments
The name of the analytic surface.
A sequence of AnalyticSurfaceSegment objects or an OdbSequenceAnalyticSurfaceSegment object.
Optional argument
A Double specifying the radius of curvature to smooth discontinuities between adjoining segments. The default value is 0.0.
Return value
Exceptions
If OdbPart is not of type THREE_D:

This method defines an OdbRigidBody on the part object.
void
RigidBody(const odb_Set& referenceNode,
odb_Enum::odb_PositionEnum position,
bool isothermal,
const odb_Set& elset,
const odb_Set& pinNodes,
const odb_Set& tieNodes);Required argument
An OdbSet specifying the reference node assigned to the rigid body.
Optional arguments
A symbolic constant specify if the location of the reference node is to be defined by the user. Possible values are odb_Enum::INPUT and odb_Enum::CENTER_OF_MASS. The default value is odb_Enum::INPUT.
A Boolean specifying an isothermal rigid body. The default value is false. This parameter is used only for a fully-coupled thermal stress analysis.
An OdbSet specifying an element set assigned to the rigid body.
An OdbSet specifying pin-type nodes assigned to the rigid body.
An OdbSet specifying tie-type nodes assigned to the rigid body.
Return value
Exceptions
If referenceNode is not a node set:

The OdbPart object has members with the same names and descriptions as the arguments to the Part method.
In addition, the OdbPart object can have the following members:
odb_String name() const;
odb_Enum::odb_DimensionEnum embeddedSpace() const;
odb_Enum::odb_PartTypeEnum type() const;
odb_Node& nodes(int index) const;
odb_SequenceNode& nodes() const;
odb_Element& elements(int index) const;
odb_SequenceElement& elements() const;
odb_SetRepository& nodeSets() const;
odb_SetRepository& elementSets() const;
odb_SetRepository& surfaces() const;
odb_SequenceSectionAssignment sectionAssignments() const;
odb_SequenceBeamOrientation beamOrientations() const;
odb_SequenceMaterialOrientation materialOrientations() const;
odb_SequenceRebarOrientation rebarOrientations() const;
odb_SequenceRigidBody rigidBodies() const;
bool hasAnalyticSurface() const;
odb_AnalyticSurface analyticSurface() const;A sequence of OdbMeshNode objects.
A sequence of OdbMeshElement objects.
A repository of OdbSet objects specifying node sets.
A repository of OdbSet objects specifying element sets.
A repository of OdbSet objects specifying surfaces.
A sequence of SectionAssignment objects.
A sequence of BeamOrientation objects.
A sequence of MaterialOrientation objects.
A sequence of RebarOrientation objects.
A sequence of OdbRigidBody objects.
An AnalyticSurface object specifying analytic Surface defined on the instance.