diff --git a/rocolib/builders/BoatPointFlatBuilder.py b/rocolib/builders/BoatPointFlatBuilder.py index 9de431384cd54ef6e542ba789bd89a825ff2a66f..4780871938b0bd61418ff62b420831b8ae94ace2 100644 --- a/rocolib/builders/BoatPointFlatBuilder.py +++ b/rocolib/builders/BoatPointFlatBuilder.py @@ -10,6 +10,25 @@ c.addSubcomponent("leftArm", "Rectangle") c.addSubcomponent("rightArm", "Rectangle") c.addSubcomponent("dcMount", "SimpleRectBeam") +c.addParameter("dx1", 10, parameterType="length") +c.addParameter("dy1", 10, parameterType="length") +c.addSubcomponent("cutout1", "Cutout") +c.addSubcomponent("cutout2", "Cutout") + +c.addConstraint(("cutout1", "dx"), "dx1") +c.addConstraint(("cutout1", "dy"), "dy1") + +c.addConstraint(("cutout2", "dx"), "dx1") +c.addConstraint(("cutout2", "dy"), "dy1") + +c.addConnection(("dcMount", "face0"), + ("cutout1", "decoration"), + mode="hole") + +c.addConnection(("dcMount", "face2"), + ("cutout2", "decoration"), + mode="hole") + c.addConstraint(("leftArm", "w"), "width", "10") c.addConstraint(("leftArm", "l"), "length", "30") diff --git a/rocolib/library/BoatBaseFlat.yaml b/rocolib/library/BoatBaseFlat.yaml index 2df0b45bff628900c1aeb9e08b41e9cb5851fa61..c8e351a54686ccf55392bf6f9845cccc1b5c6879 100644 --- a/rocolib/library/BoatBaseFlat.yaml +++ b/rocolib/library/BoatBaseFlat.yaml @@ -1,23 +1,35 @@ connections: connection0: + - - dcMount + - face0 + - - cutout1 + - decoration + - mode: hole + connection1: + - - dcMount + - face2 + - - cutout2 + - decoration + - mode: hole + connection2: - - dcMount - topedge1 - - leftArm - r - {} - connection1: + connection3: - - dcMount - botedge1 - - rightArm - r - {} - connection2: + connection4: - - boat - top - - bow - edge - {} - connection3: + connection5: - - boat - bot - - stern @@ -79,6 +91,14 @@ parameters: minValue: 0 units: mm valueType: (float, int) + dx1: + defaultValue: 10 + spec: + parameterType: length + dy1: + defaultValue: 10 + spec: + parameterType: length length: defaultValue: 100 spec: @@ -127,6 +147,22 @@ subcomponents: width: parameter: width subcomponent: boat + cutout1: + classname: Cutout + kwargs: {} + parameters: + dx: + parameter: dx1 + dy: + parameter: dy1 + cutout2: + classname: Cutout + kwargs: {} + parameters: + dx: + parameter: dx1 + dy: + parameter: dy1 dcMount: classname: SimpleRectBeam kwargs: {} diff --git a/rocolib/output/BoatBaseFlat/graph-anim.svg b/rocolib/output/BoatBaseFlat/graph-anim.svg index e430473a3dbdcd069f6c2e1ed9dc2e0be6455879..4be17c14eac9c82fb78b8d9f4499ccde9e085a98 100644 --- a/rocolib/output/BoatBaseFlat/graph-anim.svg +++ b/rocolib/output/BoatBaseFlat/graph-anim.svg @@ -21,6 +21,14 @@ <line stroke="#000000" x1="0.0" x2="10.000000000000002" y1="118.85164800000001" y2="118.85164800000001"/> <line stroke="#000000" x1="0.0" x2="0.0" y1="88.85164800000001" y2="118.85164800000001"/> <line stroke="#000000" x1="10.000000000000002" x2="0.0" y1="88.85164800000001" y2="88.85164800000001"/> + <line stroke="#888888" x1="10.000000000000002" x2="20.000000000000004" y1="98.85164800000001" y2="98.85164800000001"/> + <line stroke="#888888" x1="20.000000000000004" x2="20.000000000000004" y1="98.85164800000001" y2="108.851648"/> + <line stroke="#888888" x1="20.000000000000004" x2="10.000000000000002" y1="108.851648" y2="108.851648"/> + <line stroke="#888888" x1="10.000000000000002" x2="10.000000000000002" y1="108.851648" y2="98.85164800000001"/> + <line stroke="#888888" x1="30.000000000000004" x2="40.00000000000001" y1="98.85164800000001" y2="98.85164800000001"/> + <line stroke="#888888" x1="40.00000000000001" x2="40.00000000000001" y1="98.85164800000001" y2="108.851648"/> + <line stroke="#888888" x1="40.00000000000001" x2="30.000000000000004" y1="108.851648" y2="108.851648"/> + <line stroke="#888888" x1="30.000000000000004" x2="30.000000000000004" y1="108.851648" y2="98.85164800000001"/> <line stroke="#888888" x1="42.25000000000001" x2="42.25000000000001" y1="109.10164800000001" y2="98.601648"/> <line stroke="#888888" x1="42.25000000000001" x2="42.75000000000001" y1="98.601648" y2="98.601648"/> <line stroke="#888888" x1="42.75000000000001" x2="42.75000000000001" y1="98.601648" y2="109.10164800000001"/> diff --git a/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf b/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf index 88c0f0fff92491cb6781264ced351c889c021a16..1545a6d965e32136ce1bc314808dac47db24c7a3 100644 --- a/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf +++ b/rocolib/output/BoatBaseFlat/graph-autofold-default.dxf @@ -1401,6 +1401,150 @@ LINE 8 cut 10 +10.000000000000002 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +20.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +20.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +10.000000000000002 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +30.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +40.00000000000001 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +40.00000000000001 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 +30.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +cut + 10 42.25000000000001 20 109.10164800000001 diff --git a/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf b/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf index 2d3390d61c1677371e80a72d19ac2c9a65aba40b..9a0cb95e6b494e02525b81662f312dd5f3396d49 100644 --- a/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf +++ b/rocolib/output/BoatBaseFlat/graph-autofold-graph.dxf @@ -1311,6 +1311,150 @@ LINE 8 0 10 +10.000000000000002 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +20.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +20.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +10.000000000000002 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +30.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +40.00000000000001 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +40.00000000000001 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +30.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 42.25000000000001 20 109.10164800000001 diff --git a/rocolib/output/BoatBaseFlat/graph-lasercutter.svg b/rocolib/output/BoatBaseFlat/graph-lasercutter.svg index d5b4dc26a186d45965a51f3efe959bab9f2bc723..ede01fc5b8127f77b0a620f2f7b5664cc4a606bb 100644 --- a/rocolib/output/BoatBaseFlat/graph-lasercutter.svg +++ b/rocolib/output/BoatBaseFlat/graph-lasercutter.svg @@ -21,6 +21,14 @@ <line stroke="#000000" x1="0.0" x2="10.000000000000002" y1="118.85164800000001" y2="118.85164800000001"/> <line stroke="#000000" x1="0.0" x2="0.0" y1="88.85164800000001" y2="118.85164800000001"/> <line stroke="#000000" x1="10.000000000000002" x2="0.0" y1="88.85164800000001" y2="88.85164800000001"/> + <line stroke="#888888" x1="10.000000000000002" x2="20.000000000000004" y1="98.85164800000001" y2="98.85164800000001"/> + <line stroke="#888888" x1="20.000000000000004" x2="20.000000000000004" y1="98.85164800000001" y2="108.851648"/> + <line stroke="#888888" x1="20.000000000000004" x2="10.000000000000002" y1="108.851648" y2="108.851648"/> + <line stroke="#888888" x1="10.000000000000002" x2="10.000000000000002" y1="108.851648" y2="98.85164800000001"/> + <line stroke="#888888" x1="30.000000000000004" x2="40.00000000000001" y1="98.85164800000001" y2="98.85164800000001"/> + <line stroke="#888888" x1="40.00000000000001" x2="40.00000000000001" y1="98.85164800000001" y2="108.851648"/> + <line stroke="#888888" x1="40.00000000000001" x2="30.000000000000004" y1="108.851648" y2="108.851648"/> + <line stroke="#888888" x1="30.000000000000004" x2="30.000000000000004" y1="108.851648" y2="98.85164800000001"/> <line stroke="#888888" x1="42.25000000000001" x2="42.25000000000001" y1="109.10164800000001" y2="98.601648"/> <line stroke="#888888" x1="42.25000000000001" x2="42.75000000000001" y1="98.601648" y2="98.601648"/> <line stroke="#888888" x1="42.75000000000001" x2="42.75000000000001" y1="98.601648" y2="109.10164800000001"/> diff --git a/rocolib/output/BoatBaseFlat/graph-model.png b/rocolib/output/BoatBaseFlat/graph-model.png index 49e0dab8f457055b95c54b94bfd2da7c8cac0e58..699eec7e5e1ff8f3db8e05629958138053f58fcb 100644 Binary files a/rocolib/output/BoatBaseFlat/graph-model.png and b/rocolib/output/BoatBaseFlat/graph-model.png differ diff --git a/rocolib/output/BoatBaseFlat/graph-model.stl b/rocolib/output/BoatBaseFlat/graph-model.stl index 8a8048429ff27b3a336387f79f0880f385a4adba..a3839ca8f31a3d55a56dcb74fde3f772399b932f 100644 --- a/rocolib/output/BoatBaseFlat/graph-model.stl +++ b/rocolib/output/BoatBaseFlat/graph-model.stl @@ -1,14 +1,28 @@ solid python facet normal 0 0 0 outer loop -vertex -0.0050 0.0150 0.0000 +vertex -0.0050 -0.0050 0.0000 vertex -0.0050 -0.0150 0.0000 vertex 0.0050 -0.0150 0.0000 endloop endfacet facet normal 0 0 0 outer loop +vertex -0.0050 0.0150 0.0000 +vertex -0.0050 0.0050 0.0000 +vertex 0.0050 0.0050 0.0000 +endloop +endfacet +facet normal 0 0 0 +outer loop vertex 0.0050 -0.0150 0.0000 +vertex 0.0050 -0.0050 0.0000 +vertex -0.0050 -0.0050 0.0000 +endloop +endfacet +facet normal 0 0 0 +outer loop +vertex 0.0050 0.0050 0.0000 vertex 0.0050 0.0150 0.0000 vertex -0.0050 0.0150 0.0000 endloop @@ -29,14 +43,28 @@ endloop endfacet facet normal 0 0 0 outer loop -vertex 0.0050 0.0150 -0.0100 +vertex 0.0050 -0.0050 -0.0100 vertex 0.0050 -0.0150 -0.0100 vertex -0.0050 -0.0150 -0.0100 endloop endfacet facet normal 0 0 0 outer loop +vertex 0.0050 0.0150 -0.0100 +vertex 0.0050 0.0050 -0.0100 +vertex -0.0050 0.0050 -0.0100 +endloop +endfacet +facet normal 0 0 0 +outer loop vertex -0.0050 -0.0150 -0.0100 +vertex -0.0050 -0.0050 -0.0100 +vertex 0.0050 -0.0050 -0.0100 +endloop +endfacet +facet normal 0 0 0 +outer loop +vertex -0.0050 0.0050 -0.0100 vertex -0.0050 0.0150 -0.0100 vertex 0.0050 0.0150 -0.0100 endloop diff --git a/rocolib/output/BoatBaseFlat/graph-silhouette.dxf b/rocolib/output/BoatBaseFlat/graph-silhouette.dxf index a96eb24e6d0c0a333382bbd9da9ed5bb12667c30..ccbbf595cde7b0a3db667c3729130a0691c97ac5 100644 --- a/rocolib/output/BoatBaseFlat/graph-silhouette.dxf +++ b/rocolib/output/BoatBaseFlat/graph-silhouette.dxf @@ -1311,6 +1311,150 @@ LINE 8 0 10 +10.000000000000002 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +20.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +20.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +20.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +10.000000000000002 + 20 +108.851648 + 30 +0.0 + 11 +10.000000000000002 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +30.000000000000004 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +40.00000000000001 + 20 +98.85164800000001 + 30 +0.0 + 11 +40.00000000000001 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +40.00000000000001 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +108.851648 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 +30.000000000000004 + 20 +108.851648 + 30 +0.0 + 11 +30.000000000000004 + 21 +98.85164800000001 + 31 +0.0 + 0 +LINE + 62 +5 + 8 +0 + 10 42.25000000000001 20 109.10164800000001 diff --git a/rocolib/output/BoatBaseFlat/tree.png b/rocolib/output/BoatBaseFlat/tree.png index 19f58a4994f54441893a636556f935e830369218..aebbc297688ac686d4ab440ccf1300b646fc5214 100644 Binary files a/rocolib/output/BoatBaseFlat/tree.png and b/rocolib/output/BoatBaseFlat/tree.png differ