Point and Area Intersection
jpodval edited this page Oct 23, 2017
·
2 revisions
vertex 1 xyz 0 (-0.5) 0
vertex 2 xyz 2.3 (-0.5) 0
vertex 3 xyz 2.3 0.9 0
vertex 4 xyz 1.6 0.9 0
vertex 5 xyz 1.6 0 0
vertex 6 xyz 0 0 0
vertex {vIn} xyz 1.9 0.5 0
vertex {vOut} xyz 0.6 0.5 0
vertex {vBor} xyz 1.2 -0.5 0
curve 1 vertex 1 2
curve 2 vertex 2 3
curve 3 vertex 3 4
curve 4 vertex 4 5
curve 5 vertex 5 6
curve 6 vertex 6 1
area {area1} boundary curve +1 +2 +3 +4 +5 +6
vInInArea1 := FCS.Geometry.Intersection.PointAndArea(vIn.point3D,area1.GetIArea())
print vInInArea1.IsPointIn # True
print vInInArea1.IsPointOut # False
vOutInArea1 := FCS.Geometry.Intersection.PointAndArea(vOut.point3D,area1.GetIArea())
print vOutInArea1.IsPointOut # True
print vOutInArea1.IsPointIn # False
print vOutInArea1.IsPointOnBorder # False
vBorInArea1 := FCS.Geometry.Intersection.PointAndArea(vBor.point3D,area1.GetIArea())
print vBorInArea1.IsPointOut # False
print vBorInArea1.IsPointIn # False
print vBorInArea1.IsPointOnBorder # True
public bool IsPointOut => resultSitu == Loop.eSitu.Outside;
public bool IsPointIn => resultSitu == Loop.eSitu.Inside;
public bool IsPointOnEdge => resultSitu == Loop.eSitu.OnBorderCurve;
public bool IsPointOnVertex => resultSitu == Loop.eSitu.InBorderVertex;
public bool IsPointOnBorder => resultSitu == Loop.eSitu.InBorderVertex || resultSitu == Loop.eSitu.OnBorderCurve;
public bool IsPointOnArea => IsPointIn || IsPointOnBorder;
- Localisation
- Basics
- FemCAD workings
- Geometry
- Input
- Direct edit
- Analysis
- Output
-
Stories
- FAQ
- Stupid user mistakes
- How to discover speed issues in the code
- How to run script faster
- How to list evaluated variables
- How I got lost in graphical interface when dealing with labels
- How to create Bill of material
- How to deal with point transfer between UCS and LCS
- How to define input
- How to make output