ProtoGeometry Circle/Arc definition

Not sure if this is the best place to ask this, but following a discussion here, a question on how ProtoGeometry interprets circles and arcs was raised.

Comparing this with Rhino, it seems that even there is a circle constructor based on plane and radius, plane’s orientation is not relevant for the ProtoGeometry object. As shown in pics below, the circle’s starting point is always on the horizontal plane from the origin while in Rhino it is on the plane’s X axis (shown in blue);

Just wondering if this is the expected behaviour or might be a bug?

@Michael_Kirschner2 @Racel

(let me know if I’ve got this wrong, but as far as I understand) rotating the plane does not effect the coordinate system in which the circle is created

1 Like

That actually makes sense. I am just trying to figure out if the orientation of the plane used to build the circle with Circle.ByPlaneRadius node should have any impact on the circle, as if not is just like using Circle.ByCenterPointRadiusNormal.

Cool animation btw :slight_smile:

I think only the coordinate system affects the created circle, the plane it is on doesn’t effect it that way, be interesting to hear if someone can give a more detailed explanation :slight_smile:

here’s the python for the angle animator if your interested

tempFileName = 'C:\\Temp\\TempStringIndex.txt'
end = 360
try :
	with open(tempFileName, 'r') as file :
		value = file.read()
		if not value :
			dexPlusOne = 0
		else :
			dex = int(float(value))
			dexPlusOne = dex + 1
	with open(tempFileName, 'w') as file :
		file.write(str(dexPlusOne))
except	:
	with open(tempFileName, 'w') as file :
		file.write('0')
		dexPlusOne = 0
output = dexPlusOne % end
OUT = output

It should do since a circle is planar. The normal of the plane should define the orientation of of the circle using a right-handed coordinate system inferred from the axes of the plane. This looks like a bug to me @Aparajit_Pratap

@alvpickmans @adam_bear1 @Thomas_Mahon thanks for pointing out this bug. It has been fixed in our local builds but will be available to users only in our 2.1.0 daily builds.

1 Like

great @Aparajit_Pratap! Thanks for looking into it.