public interface Component
Modifier and Type | Method and Description |
---|---|
Optional<Double> |
distance(Component other)
Returns the minimum 3d distance between the surfaces of this
Component and another, if it exists. |
Optional<Double> |
distance(Vector3d point)
Returns the minimum 3d distance between the surface of this
Component and a given point, if it exists. |
boolean |
equals(Object object)
Returns true if the components are equal.
|
AABB3d |
getBoundingBox()
Calculates the axis-aligned bounding box for this component.
|
ComponentType |
getComponentType()
Returns the
ComponentType of the entity. |
Footprint |
getFootprint()
Returns the footprint for this component.
|
String |
getGUID()
Returns the GUID of this component specified in IFC.
|
Set<Intersection> |
getIntersections(Component component)
Returns the intersections of this component and given component.
|
String |
getName()
Returns the name of this component.
|
Collection<PropertySet> |
getPropertySets()
Returns the property sets of this component.
|
Collection<PropertySet> |
getPropertySets(String name)
Returns the property sets of this component with the given name.
|
<T> Optional<T> |
getPropertyValue(PropertyReference propertyReference)
Returns the value of property to which the given PropertyReference refers.
|
Collection<Component> |
getRelated(Relation relation)
Returns the components that are related to this component through the given relation.
|
TriangleMesh |
getTriangleMesh()
Returns the
TriangleMesh composed of the triangles of this component and its decomposed components. |
Optional<Double> |
horizontalDistance(Component other)
Returns the horizontal distance between the surfaces of this
Component and another, if it exists. |
Optional<Double> |
horizontalDistance(Vector3d point)
Returns the horizontal distance between the surface of this
Component and a point, if it exists. |
Optional<Double> |
projectionOnXYPlaneDistance(Component other)
Returns the 2d distance between the projections of this
Component and another on the XY-plane,
if it exists. |
Optional<Double> |
projectionOnXYPlaneDistance(Vector3d other)
Returns the 2d distance between the projections of this
Component and point on the XY-plane,
if it exists. |
Optional<Double> |
verticalDistance(Component other)
Returns the vertical distance between the surfaces of this
Component and another, if it exists. |
Optional<Double> |
verticalDistance(Vector3d point)
Returns the vertical distance between the surface of this
Component and a point, if it exists. |
ComponentType getComponentType()
ComponentType
of the entity.String getGUID()
boolean equals(Object object)
Collection<PropertySet> getPropertySets()
Collection<PropertySet> getPropertySets(String name)
name
- the name of the property set<T> Optional<T> getPropertyValue(PropertyReference propertyReference)
T
- the expected type of the property valuepropertyReference
- reference to the property whose value is returned if presentTriangleMesh getTriangleMesh()
TriangleMesh
composed of the triangles of this component and its decomposed components.TriangleMesh
of this component and its decomposed components.AABB3d getBoundingBox()
Footprint getFootprint()
Collection<Component> getRelated(Relation relation)
relation
- the relation through which the returned components are related to this componentString getName()
The returned name is a short displayable name that describes the type of the component.
Set<Intersection> getIntersections(Component component)
component
- a component whose intersections with this component are to be calculatedIntersection
Optional<Double> distance(Vector3d point)
Component
and a given point, if it exists.
If the point is inside the component, the distance will be from the point to the inner surface of the component.
To check if a point is inside a component instead, use TriangleMesh.encloses(Vector3d)
on the mesh
obtained via getTriangleMesh()
.point
- the given point as Vector3d
Optional<Double> distance(Component other)
Component
and another, if it exists.
If the other component is inside the component, the distance will be from the inner component to the inner
surface of the outer component.other
- the other Component
Optional<Double> horizontalDistance(Vector3d point)
Component
and a point, if it exists.
If the point is inside the component, the distance will be from the point to the inner surface of the component.point
- the point as Vector3d
Optional<Double> horizontalDistance(Component other)
Component
and another, if it exists.
If the other component is inside the component, the distance will be from the inner component to the inner
surface of the outer component.other
- the other Component
Optional<Double> verticalDistance(Vector3d point)
Component
and a point, if it exists.
If the point is inside the component, the distance will be from the point to the inner surface of the component.point
- the point as Vector3d
Optional<Double> verticalDistance(Component other)
Component
and another, if it exists.
If the other component is inside the component, the distance will be from the inner component to the inner
surface of the outer component.other
- the other Component
Optional<Double> projectionOnXYPlaneDistance(Vector3d other)
Component
and point on the XY-plane,
if it exists.other
- point the point as Vector3d
Optional<Double> projectionOnXYPlaneDistance(Component other)
Component
and another on the XY-plane,
if it exists.other
- the other Component
Copyright © 2019 Solibri, Inc.. All rights reserved.