IntelliCAD.EditorInput.Editor.TraceBoundary creates incorrect boundary with ellipse

#1
Hi,

We are using TraceBoundary to detect boundary. Seems like this method has limited (broken?) functionality compared to the UI (and AutoCAD). In the UI the user can choose if the created boundary should be a polyline or a region. The same choice is not available in the API call. So far this is the same as in AutoCAD. But when using the API call AutoCAD either creates a polyline or a region - as required. Seems like IntelliCAD always creates a polyline. Since a polyline segment can not represent an ellipse this returns incorrect polyline if for example the boundary contains an ellipse. The ellipse segment is represented as a straight line segment. Not correct.

1. Is there a way to create a boundary region instead of polyline using the API?
2. If there is no way then is there a way to detect if an ellipse segment has been detected as a straight line segment so at least our program can detect that the created polyline is incorrect? Or is there a way to simply fail the boundary detection in this situation?

Here is a link to a command which can be used to recreate the issue both in AutoCAD and IntelliCAD

https://www.keanw.com/2010/06/tracing-a ... g-net.html

To test simply create a polyline with an intersecting ellipse and detect the shape.

AutoCAD:
Image

IntelliCAD:
Image

Kind regards
Geza

Re: IntelliCAD.EditorInput.Editor.TraceBoundary creates incorrect boundary with ellipse

#2
Hi Geza,

1. Editor.TraceBoundary with ellipses
Not sure which version of IntelliCAD you have,
when trying to create boundary using the Editor.TraceBoundary on IntelliCAD PE+ 9.2, it responds a message "cannot use ellipses or splines to create a boundary".
TraceBoundary.png
TraceBoundary.png (5.25 KiB) Viewed 1119 times

2. About create Region
- use Region.CreateFromCurves(curve) to create a region from a curve (certainly, it accepts an ellipse).
- then use BooleanOperation operation to get subtract between two regions.
ex: region1.BooleanOperation(BooleanOperationType.BoolSubtract, region2);
Region_CreateFromCurves.png
Region_CreateFromCurves.png (5.25 KiB) Viewed 1119 times
Regards.

Re: IntelliCAD.EditorInput.Editor.TraceBoundary creates incorrect boundary with ellipse

#3
Hi,
thank you for the reply. Unfortunately it does not answer the question.

The question/problem is that IntelliCAD.EditorInput.Editor.TraceBoundary creates incorrect boundary with ellipse

I understand that I can manually create a region from curves. But i need to create the region using IntelliCAD.EditorInput.Editor.TraceBoundary. And that can not handle ellipse. Is this a bug or a limitation of the product compared to AutoCAD (where the same operation works)?

I am using 9.2+.

Kind regards
Geza