1
+ /// <reference path="./makerjs.d.ts" />
2
+
3
+ function test ( ) {
4
+
5
+ var makerjs : typeof MakerJs ;
6
+
7
+ var p1 : MakerJs . IPoint = [ 0 , 0 ] ;
8
+ var p2 : MakerJs . IPoint = [ 1 , 1 ] ;
9
+ var paths = testPaths ( ) ;
10
+ var models = testModels ( ) ;
11
+ var model : MakerJs . IModel = models [ 0 ] ;
12
+
13
+ function testRoot ( ) {
14
+ makerjs . extendObject ( { abc :123 } , { xyz :789 } ) ;
15
+ makerjs . findById < MakerJs . IPath > ( model . paths , 'a' ) ;
16
+ makerjs . isModel ( { } ) ;
17
+ makerjs . isPath ( { } ) ;
18
+ makerjs . isPoint ( [ ] ) ;
19
+ makerjs . pathType . Circle ;
20
+ makerjs . removeById < MakerJs . IModel > ( models , 'x' ) ;
21
+ makerjs . round ( 44.44444 , .01 ) ;
22
+ makerjs . unitType . Millimeter ;
23
+ }
24
+
25
+ function testAngle ( ) {
26
+ makerjs . angle . mirror ( 45 , true , false ) ;
27
+ makerjs . angle . noRevolutions ( 90 ) ;
28
+ makerjs . angle . ofArcEnd ( paths . arc ) ;
29
+ makerjs . angle . ofPointInRadians ( [ 0 , 0 ] , [ 1 , 1 ] ) ;
30
+ makerjs . angle . toDegrees ( Math . PI ) ;
31
+ makerjs . angle . toRadians ( 90 ) ;
32
+ }
33
+
34
+ function testExporter ( ) {
35
+ new makerjs . exporter . Exporter ( { } ) ;
36
+ makerjs . exporter . toDXF ( model ) ;
37
+ makerjs . exporter . toSVG ( model ) ;
38
+ makerjs . exporter . tryGetModelUnits ( model ) ;
39
+ }
40
+
41
+ function testKit ( ) {
42
+ makerjs . kit . construct ( null , null ) ;
43
+ makerjs . kit . getParameterValues ( null ) ;
44
+ ( < MakerJs . kit . IMetaParameter > { } ) . max ;
45
+ ( < MakerJs . kit . IKit > { } ) . metaParameters ;
46
+ }
47
+
48
+ function testMeasure ( ) {
49
+ makerjs . measure . arcAngle ( paths . arc ) ;
50
+ makerjs . measure . modelExtents ( model ) . high [ 0 ] ;
51
+ makerjs . measure . pathExtents ( paths . circle ) . low [ 0 ] ;
52
+ makerjs . measure . pathLength ( paths . line ) ;
53
+ makerjs . measure . pointDistance ( [ 0 , 0 ] , [ 9 , 9 ] ) ;
54
+ }
55
+
56
+ function testModel ( ) {
57
+ makerjs . model . mirror ( model , false , true ) ;
58
+ makerjs . model . move ( makerjs . model . originate ( model , [ 9 , 9 ] ) , [ 0 , 0 ] ) ;
59
+ makerjs . model . rotate ( makerjs . model . scale ( model , 6 ) , 45 , [ 0 , 0 ] ) ;
60
+ }
61
+
62
+ function testModels ( ) : MakerJs . IModel [ ] {
63
+ return [
64
+ new makerjs . models . BoltCircle ( 'b' , 7 , 7 , 7 , 7 ) ,
65
+ new makerjs . models . BoltRectangle ( 'c' , 2 , 2 , 2 ) ,
66
+ new makerjs . models . ConnectTheDots ( 'c' , true , [ [ 0 , 0 ] , [ 1 , 1 ] ] ) ,
67
+ new makerjs . models . GoldenRectangle ( 'g' , 7 ) ,
68
+ new makerjs . models . Oval ( 'g' , 7 , 7 ) ,
69
+ new makerjs . models . OvalArc ( 'o' , 6 , 4 , 2 , 12 ) ,
70
+ new makerjs . models . Polygon ( 'p' , 7 , 5 ) ,
71
+ new makerjs . models . Rectangle ( 'r' , 8 , 9 ) ,
72
+ new makerjs . models . Ring ( 'r' , 7 , 7 ) ,
73
+ new makerjs . models . RoundRectangle ( 'r' , 2 , 2 , 0 ) ,
74
+ new makerjs . models . SCurve ( 's' , 5 , .9 ) ,
75
+ new makerjs . models . Square ( 's' , 8 )
76
+ ] ;
77
+ }
78
+
79
+ function testPath ( ) {
80
+ makerjs . path . mirror ( paths . arc , true , true ) ;
81
+ makerjs . path . moveRelative ( paths . circle , [ 0 , 0 ] ) ;
82
+ makerjs . path . rotate ( paths . line , 5 , [ 0 , 0 ] ) ;
83
+ makerjs . path . scale ( paths . arc , 8 ) ;
84
+ }
85
+
86
+ function testPaths ( ) {
87
+ return {
88
+ arc : new makerjs . paths . Arc ( 'a' , [ 0 , 0 ] , 7 , 0 , 180 ) ,
89
+ circle : new MakerJs . paths . Circle ( 'c' , [ 0 , 0 ] , 5 ) ,
90
+ line : new makerjs . paths . Line ( 'l' , [ 0 , 0 ] , [ 1 , 1 ] )
91
+ } ;
92
+ }
93
+
94
+ function testPoint ( ) {
95
+ makerjs . point . add ( p1 , p2 ) ;
96
+ makerjs . point . areEqual ( p1 , p2 ) ;
97
+ makerjs . point . clone ( p1 ) ;
98
+ makerjs . point . fromArc ( paths . arc ) ;
99
+ makerjs . point . fromPolar ( Math . PI , 7 ) ;
100
+ makerjs . point . mirror ( p1 , true , false ) ;
101
+ makerjs . point . rotate ( p1 , 5 , p2 ) ;
102
+ makerjs . point . scale ( p2 , 8 ) ;
103
+ makerjs . point . subtract ( p2 , p1 ) ;
104
+ makerjs . point . zero ( ) ;
105
+ }
106
+
107
+ function testTools ( ) {
108
+ makerjs . tools . breakPath ( paths . line , .7 ) [ 0 ] . newPath . cssStyle ;
109
+ makerjs . tools . bridgeGaps ( [ p1 , p2 ] , [ p1 , p2 ] ) ;
110
+ makerjs . tools . gapPath ( model , 'a' , 7 , .7 ) ;
111
+ makerjs . tools . pathIntersection ( paths . circle , paths . arc ) . intersectionPoints ;
112
+ makerjs . tools . solveTriangleASA ( 4 , 4 , 4 ) ;
113
+ makerjs . tools . solveTriangleSSS ( 9 , 9 , 9 ) ;
114
+ }
115
+
116
+ function testUnits ( ) {
117
+ makerjs . units . conversionScale ( makerjs . unitType . Centimeter , makerjs . unitType . Foot ) ;
118
+ }
119
+
120
+ }
0 commit comments