FormIt Plugin API  v23.0.0 (2023.0.0)
WSM.Interval3d API

Description

Functions

json WSM.Interval3d.Interval3d (point1, pointOrHalfSize)
 
json WSM.Interval3d.AreEqual (interval3d1, interval3d2)
 
json WSM.Interval3d.AddPoint (interval3d, point3d)
 
json WSM.Interval3d.AddInterval3d (interval3d1, interval3d2)
 Adds an interval to another interval. More...
 
json WSM.Interval3d.IntersectInterval3d (interval3d1, interval3d2)
 Intersects an interval with another interval. More...
 
json WSM.Interval3d.Transform (interval3d, transf3d)
 
json WSM.Interval3d.Overlap (interval3d1, interval3d2)
 Returns true if two intervals overlap. More...
 
json WSM.Interval3d.ContainsPoint3d (interval3d, point3d)
 Returns true if an interval contains a point. More...
 
json WSM.Interval3d.IsSubinterval (interval3d1, interval3d2)
 Returns true if an interval1 is a contained by interval2. More...
 
json WSM.Interval3d.IsNull (interval3d)
 
json WSM.Interval3d.GetMidPoint (interval3d)
 Returns the mid point of an interval Parameters: In: WSM.Interval3d Out: WSM.Point3e. More...
 
json WSM.Interval3d.Enlarge (interval3d, howMuch)
 Enlarges an interval. More...
 
json WSM.Interval3d.BoundariesTouch (interval3d1, interval3d2)
 Returns true if the boundaries of the two intervals touch, i.e. More...
 
json WSM.Interval3d.Length (interval3d)
 
json WSM.Interval3d.IntersectsPlane (interval3d, plane)
 Returns true if the interval intersects a plane. More...
 
json WSM.Interval3d.IntersectsLine (interval3d, line3d)
 Returns true if the interval intersects a line. More...
 
json WSM.Interval3d.GetBoundsPoints (interval3d)
 Returns the 8 corner points of an interval. More...
 

Function Documentation

json WSM.Interval3d.AddInterval3d ( interval3d1  ,
interval3d2   
)

Adds an interval to another interval.

Returns a new interval which is the union of both Parameters: In: WSM.Interval3d, WSM.Interval3d Out: WSM.Interval3d

Parameters
[in]interval3d1WSM.Interval3d
[in]interval3d2WSM.Interval3d
Returns
interval3d1
json WSM.Interval3d.AddPoint ( interval3d  ,
point3d   
)
json WSM.Interval3d.AreEqual ( interval3d1  ,
interval3d2   
)
json WSM.Interval3d.BoundariesTouch ( interval3d1  ,
interval3d2   
)

Returns true if the boundaries of the two intervals touch, i.e.

the boxes share a side plane. . False otherwise Parameters: In: WSM.Interval3d, WSM.Interval3d Out: bool

Parameters
[in]interval3d1WSM.Interval3d
[in]interval3d2WSM.Interval3d
Returns
interval3d1.boundariesTouch(interval3d2)
json WSM.Interval3d.ContainsPoint3d ( interval3d  ,
point3d   
)

Returns true if an interval contains a point.

False otherwise Parameters: In: WSM.Interval3d, WSM.Point3d Out: bool

Parameters
[in]interval3dWSM.Interval3d
[in]point3dWSM.Point3d
Returns
interval3d && point3d
json WSM.Interval3d.Enlarge ( interval3d  ,
howMuch   
)

Enlarges an interval.

If the howMuch parameter is omitted, it is enlarged by 10*WSM_DISTANCE_TOL. Returns a new, enlarged interval Parameters: In: WSM.Interval3d Out: WSM.Interval3d

Parameters
[in]interval3dWSM.Interval3d
[in]howMuch(OPTIONAL, default = 10 * WSM_DISTANCE_TOL) double
Returns
interval3d
json WSM.Interval3d.GetBoundsPoints ( interval3d  )

Returns the 8 corner points of an interval.

Also returns true if the interval is valid or false if it is empty Parameters: In: WSM.Interval3d Out: bool "success", array of 8 WSM.Point3d "points"

Parameters
[in]interval3dWSM.Interval3d
Returns
{ { "success" , to_json(result.first)}, { "points" , to_json(result.second)} };
json WSM.Interval3d.GetMidPoint ( interval3d  )

Returns the mid point of an interval Parameters: In: WSM.Interval3d Out: WSM.Point3e.

Parameters
[in]interval3dWSM.Interval3d
Returns
interval3d.mid()
json WSM.Interval3d.IntersectInterval3d ( interval3d1  ,
interval3d2   
)

Intersects an interval with another interval.

Returns a new interval which is the intersection of both Parameters: In: WSM.Interval3d, WSM.Interval3d Out: WSM.Interval3d

Parameters
[in]interval3d1WSM.Interval3d
[in]interval3d2WSM.Interval3d
Returns
interval3d1
json WSM.Interval3d.IntersectsLine ( interval3d  ,
line3d   
)

Returns true if the interval intersects a line.

False otherwise Parameters: In: WSM.Interval3d, WSM.Line3d Out: bool

Parameters
[in]interval3dWSM.Interval3d
[in]line3dWSM.Line3d
Returns
interval3d.intersectsRay(line3d)
json WSM.Interval3d.IntersectsPlane ( interval3d  ,
plane   
)

Returns true if the interval intersects a plane.

False otherwise Parameters: In: WSM.Interval3d, WSM.Plane Out: bool

Parameters
[in]interval3dWSM.Interval3d
[in]planeWSM.Plane
Returns
interval3d.intersectsPlane(plane)
json WSM.Interval3d.Interval3d ( point1  ,
pointOrHalfSize   
)
json WSM.Interval3d.IsNull ( interval3d  )
json WSM.Interval3d.IsSubinterval ( interval3d1  ,
interval3d2   
)

Returns true if an interval1 is a contained by interval2.

False otherwise Parameters: In: WSM.Interval3d, WSM.Interval3d Out: bool

Parameters
[in]interval3d1WSM.Interval3d
[in]interval3d2WSM.Interval3d
Returns
interval3d1 <= interval3d2
json WSM.Interval3d.Length ( interval3d  )
json WSM.Interval3d.Overlap ( interval3d1  ,
interval3d2   
)

Returns true if two intervals overlap.

False otherwise Parameters: In: WSM.Interval3d, WSM.Interval3d Out: bool

Parameters
[in]interval3d1WSM.Interval3d
[in]interval3d2WSM.Interval3d
Returns
interval3d1 && interval3d2
json WSM.Interval3d.Transform ( interval3d  ,
transf3d   
)