======================= Part (hwx.inspire.core) ======================= A geometric object made up of any combination of solids, surfaces, and curves (Features). It can also be a mesh. ---------- Attributes ---------- +----------------------------------------+----------------------------------------+----------------------------------------+ | active_: Bool | autoCalcMotionContactResolution_: Bool | autoCalculateCG_: Bool | +----------------------------------------+----------------------------------------+----------------------------------------+ | autoCalculateMass_: Bool | autoCalculateMeshSize_: Bool | autoCalculateMoment_: Bool | +----------------------------------------+----------------------------------------+----------------------------------------+ | autoCalculateThickness_: Bool | cg_: Location | color_: Color | +----------------------------------------+----------------------------------------+----------------------------------------+ | designSpace_: Bool | detectCollisions_: Bool | flexible_: Bool | +----------------------------------------+----------------------------------------+----------------------------------------+ | ground_: Bool | ignoreFlexibility_: Bool | ip_: Inertia | +----------------------------------------+----------------------------------------+----------------------------------------+ | mass_: Double | material_: Attribute | maxFreq_: Double | +----------------------------------------+----------------------------------------+----------------------------------------+ | maxMeshSize_: Double | maxThickness_: Double | minGap_: Double | +----------------------------------------+----------------------------------------+----------------------------------------+ | minMeshSize_: Double | minThickness_: Double | modeType_: Enum | +----------------------------------------+----------------------------------------+----------------------------------------+ | modifiable_: Bool | morphable_: Bool | motionContactResolution_: Enum | +----------------------------------------+----------------------------------------+----------------------------------------+ | movable_: Bool | name_: Attribute | numModes_: Int | +----------------------------------------+----------------------------------------+----------------------------------------+ | orderType_: Enum | position_: Attribute | rigidGroup_: Attribute | +----------------------------------------+----------------------------------------+----------------------------------------+ | sheetThickness_: Double | strainCalculation_: Bool | stressCalculation_: Bool | +----------------------------------------+----------------------------------------+----------------------------------------+ | transparency_: Double | visible_: Bool | volume_: Double | +----------------------------------------+----------------------------------------+----------------------------------------+ ---------- Properties ---------- +-------------+-------------+-------------+ | dimensions_ | holes_ | rigid_ | +-------------+-------------+-------------+ -------------- Public Methods -------------- +-----------------------------------------------------------------------+ | classmethod getClass_ (cls, className) | +-----------------------------------------------------------------------+ | destroy_ (self) | +-----------------------------------------------------------------------+ | findMinimumSeparation_ (self, other) | +-----------------------------------------------------------------------+ | getAllChildren_ (self, type=None, **kwds) | +-----------------------------------------------------------------------+ | getChild_ (self, name=None, recursive=False, **kwds) | +-----------------------------------------------------------------------+ | getChildren_ (self, type=None, recursive=False, sorted=False, **kwds) | +-----------------------------------------------------------------------+ | getDependents_ (self, recursive=False, **kwds) | +-----------------------------------------------------------------------+ | getFeature_ (self, name=None) | +-----------------------------------------------------------------------+ | getFeatures_ (self, type=None, rep='BestRep', **kwds) | +-----------------------------------------------------------------------+ | getReferences_ (self, recursive=False, **kwds) | +-----------------------------------------------------------------------+ | identifyShape_ (self) | +-----------------------------------------------------------------------+ | intersects_ (self, other) | +-----------------------------------------------------------------------+ | isa_ (self, type=None, filter=None, name=None, wildcard=None, **kwds) | +-----------------------------------------------------------------------+ | modelPositions_ (self) | +-----------------------------------------------------------------------+ | save_ (self, file) | +-----------------------------------------------------------------------+ ----------------- Attribute Details ----------------- .. _active: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ active : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the object activeness. Setting this on or off sets all children. Setting to True sets all the parents active too. .. _autoCalcMotionContactResolution: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalcMotionContactResolution : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the motion contact fidelity properties from the part. .. _autoCalculateCG: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalculateCG : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the center of gravity is auto calculated. .. _autoCalculateMass: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalculateMass : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the mass value is automatically calculated based upon volume and material density. .. _autoCalculateMeshSize: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalculateMeshSize : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Indicates whether the minimum and average element sizes used for the solution are automatically calculated. Set to False to enter these values manually. Decreasing the minimum element size will increase the detail of your results in areas that use a number of small elements. The average element size controls the overall detail of your results. .. _autoCalculateMoment: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalculateMoment : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the mass moment of inertia is automatically calculated. .. _autoCalculateThickness: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ autoCalculateThickness : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the minimum and maximum thickness values are automatically calculated. All parts are taken into account during the calculation. .. _cg: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cg : :ref:`Location ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns the object's global center of gravity as a point. .. _color: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ color : :ref:`Color ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines the color assigned to the object when it is displayed in the modeling window. The default color for parts is gray, but a different color can be assigned. .. _designSpace: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ designSpace : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the part is a design space. A part must be designated as a design space if we intend to optimize it. .. _detectCollisions: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ detectCollisions : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether to detect collision. It prevents parts in the model from overlapping and has been enabled by default. .. _flexible: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ flexible : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Makes the part flexible, if set to True. .. _ground: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ground : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the object to be ground or immovable. .. _ignoreFlexibility: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ignoreFlexibility : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Allows the part to ignore flexibility. .. _ip: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ip : :ref:`Inertia ` (units="massMI") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specifies the inertial properties of this object. Resistance to change in motion (ixx, iyy, izz, ixy, izy, ixz). .. _mass: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mass : :ref:`Double ` (units="m") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The mass of the object. .. _material: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ material : :ref:`Attribute ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The material of the object. Every part in the model has a material assigned to it. The default material is steel, but a different material can be assigned. .. _maxFreq: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ maxFreq : :ref:`Double ` (units="frequency") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Upper bound frequency for the eigenvalue analysis of the flexible part. .. _maxMeshSize: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ maxMeshSize : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the maximum mesh size of the part. .. _maxThickness: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ maxThickness : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The maximum thickness value. .. _minGap: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ minGap : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ .. _minMeshSize: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ minMeshSize : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the minimum mesh size of the part. .. _minThickness: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ minThickness : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The minimum thickness value. .. _modeType: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ modeType : :ref:`Enum ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ How normal modes are defined. .. _modifiable: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ modifiable : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the selected object can be edited. .. _morphable: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ morphable : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the selected object shape can be changed. .. _motionContactResolution: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ motionContactResolution : :ref:`Enum ` (verylow, low, medium, high, veryhigh) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The resolution of the motion contact. It can be: - "verylow" - "low" - "medium" - "high" - "veryhigh" .. _movable: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ movable : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the selected object can be translated in the modeling window or has been locked in place. .. _name: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ name : :ref:`Attribute ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Returns or sets the name of the object. It can be any text string, including spaces, although it's best to avoid using the following characters: " ' * ? and $. While these characters are allowed, they could create difficulties when you export the model to other applications. .. _numModes: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ numModes : :ref:`Int ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specifies the number of modes of the part. .. _orderType: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ orderType : :ref:`Enum ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Order of elements for flexbody mesh. .. _position: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ position : :ref:`Attribute ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specifies the global transform as a Matrix44. .. _rigidGroup: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ rigidGroup : :ref:`Attribute ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The rigid group this object belongs to. .. _sheetThickness: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ sheetThickness : :ref:`Double ` (units="length") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Thickness of the 2D part used in volume calculation. .. _strainCalculation: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ strainCalculation : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether to calculate the strain or not. .. _stressCalculation: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ stressCalculation : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether to calculate stress or not. .. _transparency: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ transparency : :ref:`Double ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specifies the transparency of the object. Allows you to change the transparency, according to a percentage. By default, objects are 0% transparent(opaque). .. _visible: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ visible : :ref:`Bool ` ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Determines whether the object is visible in the graphics window. Setting this on or off sets all children. Setting to True sets all the parents visible too. .. _volume: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ volume : :ref:`Double ` (units="volume") ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The volume of the object in the assembly. ---------------- Property Details ---------------- .. _dimensions: .. property:: dimensions Number of dimensions utilized by the part's features: - 0 - a point - 1 - a line - 2 - a sheet - 3 - a 3 dimensional part .. _holes: .. property:: holes Returns a list of holes for this part. Unlike the model.holes property which returns a list that has extra information like aligned and singular, this returns a standard Python list. .. _rigid: .. property:: rigid Determines if the part is a rigid or not. -------------- Method Details -------------- .. _getClass: .. classmethod:: getClass(cls, className) Returns the class of the object. It can be simple or qualified (with namespace). If the name is simple, we prepend the cls.namespace. :param className: The class name. :type className: Union[Part, Occurrence, Named..] :returns: The class for the specified className. :rtype: Union[Part, Occurrence, Named..] .. _destroy: .. method:: destroy(self) Destroys occurrences from the model. .. _findMinimumSeparation: .. method:: findMinimumSeparation(self, other) Find closest points between two parts :param other: The 2nd part. :type other: Part :returns: namedtuple("ClosestPoints", "point1 point2 distance feature1 feature2") .. _getAllChildren: .. method:: getAllChildren(self, type=None, **kwds) Returns a list of all children that matches the specified type. :param type: Filter to use to get the children based on object type. :type type: list[Named] :param \*\*kwds: Additional keyword arguments to match other attributes of the object. :returns: The list of children that satisfy the supplied filters. :rtype: list[Union[Part, Motor, BoundaryCondition, ...]] .. _getChild: .. method:: getChild(self, name=None, recursive=False, **kwds) Returns the child of the object which matches the specified unique name. :param name: The name of the child object. :type name: str :param recursive: Search all descendents. :type recursive: bool :param \*\*kwds: Additional keyword arguments to match attributes of the object. :returns: The child object which satisfies the specified filters. :rtype: Named .. _getChildren: .. method:: getChildren(self, type=None, recursive=False, sorted=False, **kwds) Returns a list of children that is of the specified type. :param type: Filter objects by class. :type type: Type[Named] :param recursive: True to get all descendent Parts and Assemblies. :type recursive: bool :param sorted: Sort the children base on id. :type sorted: bool :returns: list[Named] .. _getDependents: .. method:: getDependents(self, recursive=False, **kwds) Get objects that reference this object through a Reference attribute. :param recursive: :type recursive: bool :param \*\*kwds: Filter objects using isa. :returns: set[Named] .. _getFeature: .. method:: getFeature(self, name=None) Returns the feature based on its name. .. _getFeatures: .. method:: getFeatures(self, type=None, rep='BestRep', **kwds) "Returns a list of features based on specified filters. :param type: Filters the features based on type. :type type: FeaturePoint, FeatureArea, FeatureCylindrical..etc) :param rep: Feature representation. See part.representations for options :type rep: str :param \*\*kwds: Additional attributes to consider while filtering. :returns: List of features that satisfies all the filter criteria. :rtype: list [FeaturePoint, FeatureArea, FeatureCylindrical..etc)] .. _getReferences: .. method:: getReferences(self, recursive=False, **kwds) Get objects this object references through a Reference attribute. :param recursive: :type recursive: bool :param \*\*kwds: Filter objects using isa. :returns: set[Named] .. _identifyShape: .. method:: identifyShape(self) Attempts to identify the part geometry as a known shape. The shapes can be: - Box - Ellipsoid - Sphere - Cylinder - frustum - axi-symmetric gear - rack :returns: The identified shape. :rtype: Box,Ellipsoid,Sphere.. .. _intersects: .. method:: intersects(self, other) Finds whether the two parts intersect. :param other: The 2nd part. :type other: Part :returns: True if they intersect, False otherwise. :rtype: bool .. _isa: .. method:: isa(self, type=None, filter=None, name=None, wildcard=None, **kwds) Determines if the object matches the specified settings or not. :param type: The type of the object. :type type: Union[Part, Assembly, Contact..] :param filter: Return value of specified callback method. :type filter: method :param name: Name that matches exactly with object name. :type name: str :param wildcard: A pattern to match exactly with the object name. :type wildcard: str :param \*\*kwds: Additional keyword arguments to match other attributes. :returns: True, if a match is found, otherwise False. :rtype: bool .. _modelPositions: .. method:: modelPositions(self) Forces all objects to return the original model positions instead of the current analysis positions. Useful when defining draw methods on GeneralObjects where behaviour is different while animating. .. _save: .. method:: save(self, file) Save the Part in the specified file. :param file: File name and path, where the file needs to be saved. Valid file extensions are: '.x_b', '.x_t', '.xmt_bin', '.xmt_txt', '.sat', '.sab', '.iges', '.igs', '.stl', '.step', '.stp', '.obj', '.vrml', '.vrl'. :type file: str