124 |
|
|
125 |
}; |
}; |
126 |
|
|
127 |
|
/** An elliptical fillet meeting a circle. |
128 |
|
*/ |
129 |
|
struct EllipseCircleFillet { |
130 |
|
const CircularNode &node; |
131 |
|
const LinearConnectionHalf &conn; |
132 |
|
float tangentAngle; |
133 |
|
/** Make a new fillet. |
134 |
|
* @param ta The tangent angle, i.e. always positive angle between |
135 |
|
* connection line and tangent line. |
136 |
|
*/ |
137 |
|
EllipseCircleFillet( |
138 |
|
const CircularNode &node, |
139 |
|
const LinearConnectionHalf &conn, |
140 |
|
float ta |
141 |
|
) : node(node), conn(conn), tangentAngle(ta) |
142 |
|
{ |
143 |
|
Vec pt = Vec(conn.d, 0) - dirVec(-tangentAngle); |
144 |
|
Vec no = dirVec(-tangentAngle); |
145 |
|
|
146 |
|
Vec elli = Geom::symmellipse__point_norm(pt, no); |
147 |
|
} |
148 |
|
}; |
149 |
|
|
150 |
/** A circular fillet edge span, for a circular node. |
/** A circular fillet edge span, for a circular node. |
151 |
* This is simply a circular arc from the connection to the point |
* This is simply a circular arc from the connection to the point |
152 |
* where it is tangent to the circular node. |
* where it is tangent to the circular node. |