Professional Documents
Culture Documents
Existing
1. Regular Volume
Class name OclsGARegularVolume
Related files OclsGAVolume.h OclsGAVolume.cpp
General description Stands for the volume of current functional part
Calculations All the volumes of contained primitive parts are summed, while process of learning,
description and the total volume is returned
2. BBox Volume
Class name OclsGABBoxVolume
Related files OclsGAVolume.h OclsGAVolume.cpp
General description Stands for the volume of current functional part’s bounding box
Calculations All the bounding boxes of contained primitive parts are summed, while process of
description learning, and the overall volume of the most encompassing bounding box is returned
3. Inertia Moments
a. Inertia Moment (Ixx)
Class name OclsGAInertiaMomentsIxx
Related files OclsGAInertiaMoments.h OclsGAInertiaMoments.cpp
General description Stands for the Ixx inertia moment of current functional part
Calculations According to the kind of the primitive part the appropriate integral is calculated, while
description process of learning, then the inertia moments are summed by means of the rule of
parallel axes
8. Stability
Class name OclsGAStability
Related files OclsGAStability.h OclsGAStability.cpp
General description Stands for the estimation of how stable the functional part, being checked, is
Calculations Location of the object mass center is tested for being inside the convex hull of all its
description vertices, projected onto the ground plane. The testing is done by means of
‘OclsImp::IsStable’ method
9. Linear Symmetry
Class name OclsGALinearSymmetry
Related files OclsGASymmetry.h OclsGASymmetry.cpp
General description Stands for the estimation of how linearly symmetric the functional part, being
checked, is, i.e. whether there are any planes, that divide the part into two symmetric
pieces
Calculations The attribute checks, whether there are any planes, according to which the symmetry
description may be found. These planes are called presumable planes of symmetry and are
derived from each one of the primitive parts’ orientational system of coordinates
15. Regularity
a. Circular Regularity by Angle
Class name OclsGACircularRegularityByAngle
Related files OclsGACircularRegularityByAngle.h OclsGACircularRegularityByAngle.cpp
General description Tests, whether any repeating patterns can be found in the shape of the functional
part, when we rotate it
Calculations The regularity is measured by calculating a standard deviation of angles between the
description functional part mass center and mass centers of primitive parts, forming the entire
functional part
c. Linear Regularity
Class name OclsGALinearRegularity
Related files OclsGALinearRegularity.h OclsGALinearRegularity.cpp
General description Estimates, how close the primitive parts of the functional part are located to the
diameter of the functional part, where the diameter is a segment, connecting two
furthermost representative points
Calculations The regularity is measured by calculating a standard deviation of distances from mass
description centers of primitive parts to the diameter
18. Orientation
Class name OclsGAFPartOrientation
Related files OclsGAFPartOrientation.h OclsGAFPartOrientation.cpp
General description Stands for angle between the ground plane and the major axis of the functional part
Calculations Major axis of the functional part is found, while process of learning, and so is the
description ground plane, so that the attribute calculates an angle between two these vectors
b. Minor Axis 1
Class name OclsGARelativeMinorAxis1
Related files OclsGADirection.h OclsGADirection.cpp
General description Stands for angle between two functional parts’ secondary axes
Calculations The orientations of both functional parts are found, while process of learning, so that
description this attribute calculates an angle between two secondary eigenvectors
c. Minor Axis 2
Class name OclsGARelativeMinorAxis2
Related files OclsGADirection.h OclsGADirection.cpp
General description Stands for angle between two functional parts’ third axes
Calculations The orientations of both functional parts are found, while process of learning, so that
description this attribute calculates an angle between two smallest eigenvectors
5. Relative Distance of the Intersection Mass Center to the FPart Mass Centers
Class name OclsGAMassCentersRelativeDistance
Related files OclsGAMassCentersRelativeDistance.h OclsGAMassCentersRelativeDistance.cpp
General description Stands for proportion between distances from two functional parts' mass centers to
their intersection mass center
Calculations This attribute finds the intersection bounding box between two functional parts’
description bounding boxes, then calculates its center; the functional parts’ mass centers are
found, while process of learning; the distances from two functional parts' mass
centers to their intersection mass center are calculated and the attribute merely
returns the proportion of the minimal distance to the maximal distance
6. Relative Direction of the Intersection Mass Center to the FPart Mass Centers
Class name OclsGAMassCentersRelativeDirection
Related files OclsGAMassCentersRelativeDirection.h OclsGAMassCentersRelativeDirection.cpp
General description Stands for relation between directions from two functional parts' mass centers to their
intersection point
Calculations This attribute finds the intersection bounding box between two functional parts’
description bounding boxes, then calculates its center; the functional parts’ mass centers are
found, while process of learning; the vectors from two functional parts' mass centers
to their intersection mass center are found and the attribute returns the vector
multiplication of the bigger vector by the smaller vector
7. FPart BBox Connections
Class name OclsGABBoxConnection
Related files OclsGABBoxConnection.h OclsGABBoxConnection.cpp
General description Stands for sides, which the bounding boxes of two functional parts share
Calculations The attribute calculates the evaluation value, being given to two implementations of
description functional parts. The returned value designates sides, which the bounding boxes of
two functional parts share. Each bit of the returned value, represented as 12-bit
binary number, stands for sharing / not sharing of some side of two bounding boxes:
for instance, the most significant bit in this 12-bit number stands for sharing the side,
which is parallel to OYZ plane with minimal X-coordinate in the bounding box
5. Crucial Stability
Class name OclsGACrucialStability
Related files OclsGACrucialStability.h OclsGACrucialStability.cpp
General description Stands for the feature of the object to have certain functional parts, the presence of
which is crucial for the stability of the whole object. Namely, if such a part is removed
from the object, the check for the implementation stability will fail
Calculations The primitive parts of the functional part are removed from the object and the
description stability test is performed on the changed object
6. Crucial Connectivity
Class name OclsGACrucialConnectivity
Related files OclsGACrucialConnectivity.h OclsGACrucialConnectivity.cpp
General description Stands for the feature of the object to have certain functional parts, the presence of
which is crucial for the connectivity of the whole object. Namely, if such a part is
removed from the object, the check for the implementation connectivity will fail
Calculations The primitive parts of the functional part are removed from the object and the
description connectivity test is performed on the changed object
7. All the connection geometric attributes can be used for the node as well.