MCPcopy Index your code
hub / github.com/CadQuery/cadquery / _pt_arc

Function _pt_arc

cadquery/hull.py:182–196  ·  view source on GitHub ↗
(p: Point, a: Arc)

Source from the content-addressed store, hash-verified

180
181
182def _pt_arc(p: Point, a: Arc) -> Tuple[float, float, float, float]:
183
184 x, y = p.x, p.y
185
186 r = a.r
187 xc, yc = a.c.x, a.c.y
188 dx, dy = x - xc, y - yc
189 l = sqrt(dx ** 2 + dy ** 2)
190
191 x1 = r ** 2 / l ** 2 * dx - r / l ** 2 * sqrt(l ** 2 - r ** 2) * dy + xc
192 y1 = r ** 2 / l ** 2 * dy + r / l ** 2 * sqrt(l ** 2 - r ** 2) * dx + yc
193 x2 = r ** 2 / l ** 2 * dx + r / l ** 2 * sqrt(l ** 2 - r ** 2) * dy + xc
194 y2 = r ** 2 / l ** 2 * dy - r / l ** 2 * sqrt(l ** 2 - r ** 2) * dx + yc
195
196 return x1, y1, x2, y2
197
198
199def pt_arc(p: Point, a: Arc) -> Tuple[float, Segment]:

Callers 3

pt_arcFunction · 0.85
arc_ptFunction · 0.85
arc_arcFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected