File tree Expand file tree Collapse file tree 1 file changed +89
-0
lines changed
Expand file tree Collapse file tree 1 file changed +89
-0
lines changed Original file line number Diff line number Diff line change 1+ import { subtract , union } from '@jscad/modeling/src/operations/booleans'
2+ import { hullChain } from '@jscad/modeling/src/operations/hulls'
3+ import {
4+ rotateX ,
5+ rotateY ,
6+ translate ,
7+ } from '@jscad/modeling/src/operations/transforms'
8+ import { cuboid , cylinder } from '@jscad/modeling/src/primitives'
9+ import { degToRad } from '@jscad/modeling/src/utils'
10+
11+ const baseSize = 14.5
12+ const cornerRadius = 2.5
13+
14+ export const growlightHolder = ( ) => {
15+ return union ( [
16+ translate (
17+ [ 0 , - baseSize / 2 , baseSize / 2 ] ,
18+ cuboid ( {
19+ size : [ baseSize + 10 , baseSize , baseSize ] ,
20+ } ) ,
21+ ) ,
22+ translate (
23+ [ 4.75 + 5 , - 3.5 , baseSize - cornerRadius ] ,
24+ subtract (
25+ hullChain (
26+ translate (
27+ [ 0 , 1 , 0 ] ,
28+ rotateY (
29+ degToRad ( 90 ) ,
30+ cylinder ( {
31+ radius : cornerRadius ,
32+ height : 5 ,
33+ } ) ,
34+ ) ,
35+ ) ,
36+ translate (
37+ [ 0 , 1 , - ( baseSize - 2 * cornerRadius ) ] ,
38+ rotateY (
39+ degToRad ( 90 ) ,
40+ cylinder ( {
41+ radius : cornerRadius ,
42+ height : 5 ,
43+ } ) ,
44+ ) ,
45+ ) ,
46+ translate (
47+ [ 0 , 100 , - 3 ] ,
48+ rotateY (
49+ degToRad ( 90 ) ,
50+ cylinder ( {
51+ radius : cornerRadius ,
52+ height : 5 ,
53+ } ) ,
54+ ) ,
55+ ) ,
56+ translate (
57+ [ 0 , 100 , 0 ] ,
58+ rotateY (
59+ degToRad ( 90 ) ,
60+ cylinder ( {
61+ radius : cornerRadius ,
62+ height : 5 ,
63+ } ) ,
64+ ) ,
65+ ) ,
66+ translate (
67+ [ 0 , 1 , 0 ] ,
68+ rotateY (
69+ degToRad ( 90 ) ,
70+ cylinder ( {
71+ radius : cornerRadius ,
72+ height : 5 ,
73+ } ) ,
74+ ) ,
75+ ) ,
76+ ) ,
77+ translate (
78+ [ 0 , 90 , 5 ] ,
79+ rotateX (
80+ degToRad ( - 2 ) ,
81+ cuboid ( {
82+ size : [ 14 , 14 , 14 ] ,
83+ } ) ,
84+ ) ,
85+ ) ,
86+ ) ,
87+ ) ,
88+ ] )
89+ }
You can’t perform that action at this time.
0 commit comments