You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

224 lines
9.3 KiB

8 months ago
#include "organizer/loader.hpp"
void loaderTest1()
{
Loader loader;
std::vector<Point3D> points;
std::vector<double> bulges;
Vector3D extusion;
Point3D topPoint, bottomPoint, basePoint;
Direction3D direction;
double offset, radius1, radius2;
/* ��1 */
points.clear();
bulges.clear();
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.99999999999999989);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag1 = loader.addExtrude(points, bulges, extusion);
loader.output(tag1);
/* ��2 */
points.clear();
bulges.clear();
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392534654100421e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391228016184551e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag2 = loader.addExtrude(points, bulges, extusion);
/* ��3 */
points.clear();
bulges.clear();
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392534654100421e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391228016184551e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag3 = loader.addExtrude(points, bulges, extusion);
/* ��4 */
topPoint = Point3D{-1.1224183253943920e-06, -3.8391322798592142e-07, 0.0000000000000000};
bottomPoint = Point3D{-1.1224183253943920e-06, -3.8391322798592142e-07, 3300.0000000000000000};
radius1 = 32450.000000000000;
radius2 = 33539.000000000000;
auto tag4 = loader.addCone(topPoint, bottomPoint, radius1, radius2);
/* ��3���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8391322798592142e-07, 0.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag3, basePoint, direction);
/* ��3����4������ */
loader.differentNode(tag3, tag4);
/* ��5 */
points.clear();
bulges.clear();
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392534654100421e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391228016184551e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag5 = loader.addExtrude(points, bulges, extusion);
/* ��5���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8391322798592142e-07, 3300.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag3, basePoint, direction);
/* ��3����5������ */
loader.unionNode(tag3, tag5);
/* ��6 */
points.clear();
bulges.clear();
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392534654100421e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391228016184551e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag6 = loader.addExtrude(points, bulges, extusion);
/* ��6���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8391322798592142e-07, 3300.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag6, basePoint, direction);
/* ��3����6������ */
loader.unionNode(tag3, tag6);
/* ��2����3������ */
loader.differentNode(tag2, tag3);
/* ��7 */
points.clear();
bulges.clear();
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391191745198337e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392498383114206e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag7 = loader.addExtrude(points, bulges, extusion);
/* ��8 */
points.clear();
bulges.clear();
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391191745198337e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392498383114206e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag8 = loader.addExtrude(points, bulges, extusion);
/* ��9 */
topPoint = Point3D{-1.1224183253943920e-06, -3.8392403600706615e-07, 0.0000000000000000};
bottomPoint = Point3D{-1.1224183253943920e-06, -3.8392403600706615e-07, 3300.0000000000000000};
radius1 = 32450.000000000000;
radius2 = 33539.000000000000;
auto tag9 = loader.addCone(topPoint, bottomPoint, radius1, radius2);
/* ��8���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8392403600706615e-07, 3300.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag8, basePoint, direction);
/* ��8����9������ */
loader.differentNode(tag8, tag9);
/* ��10 */
points.clear();
bulges.clear();
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391191745198337e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392498383114206e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag10 = loader.addExtrude(points, bulges, extusion);
/* ��10���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8392403600706615e-07, 3300.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag10, basePoint, direction);
/* ��8����10������ */
loader.unionNode(tag8, tag10);
/* ��11 */
points.clear();
bulges.clear();
points.push_back(Point3D{32449.999998877582, -3.8392495305561452e-07, 0.0000000000000000});
points.push_back(Point3D{-32450.000001122418, -3.8391231093737305e-07, 0.0000000000000000});
points.push_back(Point3D{-33539.000001122418, -3.8391191745198337e-07, 0.0000000000000000});
points.push_back(Point3D{33538.999998877582, -3.8392498383114206e-07, 0.0000000000000000});
bulges.push_back(0.99999999999999989);
bulges.push_back(0.0000000000000000);
bulges.push_back(-0.99999999999999989);
bulges.push_back(0.0000000000000000);
extusion = Vector3D{0.0000000000000000, 0.0000000000000000, 3300.0000000000000};
auto tag11 = loader.addExtrude(points, bulges, extusion);
/* ��11���и� */
basePoint = Point3D{-1.1224183253943920e-06, -3.8392403600706615e-07, 3300.0000000000000000};
direction = Direction3D{0, 0, 1};
loader.split(tag11, basePoint, direction);
/* ��8����11������ */
loader.unionNode(tag8, tag11);
/* ��7����8������ */
loader.differentNode(tag7, tag8);
/* ��2����7������ */
loader.unionNode(tag2, tag7);
/* ��1����2������ */
loader.unionNode(tag1, tag2);
/* ��1 Z��ƫ�� -3600 */
direction = Direction3D{0, 0, 1};
offset = -3600;
loader.offset(tag1, direction, offset);
}
int main(int argc, char** argv)
{
loaderTest1();
return 0;
}