You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I can't figure out how to reproduce more concisely, and I originally believed it was related to edges being reversed, but that does not appear to be the case in my investigation. cc @jwagenet since you know more about these new objects than anyone.
withBuildPart() asp:
withBuildLine() asl:
m1=JernArc((160/2,0),(1,0),220,-39.327)
print(m1@1)
withBuildSketch() ass:
withPolarLocations(0,4):
SlotArc(m1,80)
extrude(amount=30)
withBuildSketch() ass2:
add(s.sketch)
offset(amount=-20)
extrude(amount=30,mode=Mode.SUBTRACT)
ax=Axis((0,0,0),(1,1,0))
e1=s.sketch.edges().filter_by_position(ax,0,30).sort_by(Axis.X)
zz=ArcArcTangentArc(e1[0],e1[1],25,side=Side.LEFT) # placed incorrectly, length is same as later uses, swapping sides does not fix it but create a different wrong resultb1=CenterArc((80,0),40,90,180)
b2=CenterArc((0,80),40,0,-180)
aata=ArcArcTangentArc(b1,b2,25,side=Side.RIGHT) # works finer1=Edge(b1.wrapped.Reversed())
r2=Edge(b2.wrapped.Reversed())
raata=ArcArcTangentArc(r1,r2,25,side=Side.RIGHT) # also works fine
The text was updated successfully, but these errors were encountered:
Oops, good catch! This error does seem to be related to the edge direction being reversed, specifically start_arc, and should only happen when the object is created out of context. What seems to be happening is in algebra mode a workplane is made using the start_arc normal to set the plane normal and while the arc is actually in the right place (because the plane is flipped), but the point ordering for RadiusArc is wrong.
I think the easiest solution is to check the tangency of the resulting arc as the construction points are not in the correct order in this case. I suspect planes with "negative" normals are to blame. The one loose end here (and I dont think this object behavior is to blame) is for algebra mode users Side results may remain unintuitive when the reference edges come from other compound objects as in this case.
A workaround for now is to create the object in a BuildLine context:
I confirmed edge direction by showing the first vert of each. The edges from the previous operations are reversed (clockwise) from those created by CenterArc (counterclockwise). I'm not fluent in OCP-land, but Edge(b1.wrapped.Reversed()) did not reverse the edges as intended. I'm able to reproduce the error with Edge.reversed() instead:
Further, I can reproduce with the first arc reversed ArcArcTangentArc(r1,b2,25,side=Side.RIGHT), but not with the second reversed ArcArcTangentArc(b1,r2,25,side=Side.RIGHT), which means the error is related how the workplane is created outside of a context and point ordering when creating arc with RadiusArc.
Uh oh!
There was an error while loading. Please reload this page.
I can't figure out how to reproduce more concisely, and I originally believed it was related to edges being reversed, but that does not appear to be the case in my investigation. cc @jwagenet since you know more about these new objects than anyone.
The text was updated successfully, but these errors were encountered: