Skip to content

Commit 9e2c304

Browse files
committed
Geometry browser
1 parent ffda14b commit 9e2c304

9 files changed

Lines changed: 461 additions & 46 deletions

File tree

docs/api/extras/geometries/BoxGeometry.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ <h1>[name]</h1>
1313

1414
<div class="desc">BoxGeometry is the quadrilateral primitive geometry class. It is typically used for creating a cube or irregular quadrilateral of the dimensions provided with the 'width', 'height', and 'depth' constructor arguments.</div>
1515

16+
<iframe src='../../../scenes/geometry-browser.html#BoxGeometry'></iframe>
17+
1618
<h2>Example</h2>
1719

1820
<code>var geometry = new THREE.BoxGeometry( 1, 1, 1 );

docs/api/extras/geometries/CircleGeometry.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ <h1>[name]</h1>
1616

1717
<h2>Example</h2>
1818

19+
<iframe src='../../../scenes/geometry-browser.html#CircleGeometry'></iframe>
20+
1921
<code>var material = new THREE.MeshBasicMaterial({
2022
color: 0x0000ff
2123
});

docs/api/extras/geometries/CylinderGeometry.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ <h1>[name]</h1>
1515

1616

1717
<h2>Example</h2>
18+
19+
<iframe src='../../../scenes/geometry-browser.html#CylinderGeometry'></iframe>
1820

1921
<code>var geometry = new THREE.CylinderGeometry( 5, 5, 20, 32 );
2022
var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );

docs/api/extras/geometries/PlaneGeometry.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@ <h1>[name]</h1>
1515

1616

1717
<h2>Example</h2>
18+
19+
<iframe src='../../../scenes/geometry-browser.html#PlaneGeometry'></iframe>
1820

1921
<code>var geometry = new THREE.PlaneGeometry( 5, 20, 32 );
2022
var material = new THREE.MeshBasicMaterial( {color: 0xffff00, side: THREE.DoubleSide} );

docs/api/extras/geometries/RingGeometry.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ <h1>[name]</h1>
1313

1414
<div class="desc">A class for generating a two-dimensional ring geometry.</div>
1515

16+
<iframe src='../../../scenes/geometry-browser.html#RingGeometry'></iframe>
17+
1618
<h2>Example</h2>
1719

1820
<code>var geometry = new THREE.RingGeometry( 1, 5, 32 );
@@ -29,7 +31,7 @@ <h3>[name]([page:Float innerRadius], [page:Float outerRadius], [page:Integer the
2931
innerRadius — Default is 0, but it doesn't work right when innerRadius is set to 0.<br />
3032
outerRadius — Default is 50. <br />
3133
thetaSegments — Number of segments. A higher number means the ring will be more round. Minimum is 3. Default is 8. <br />
32-
phiSegments — Minimum is 3. Default is 8.<br />
34+
phiSegments — Minimum is 1. Default is 8.<br />
3335
thetaStart — Starting angle. Default is 0. <br />
3436
thetaLength — Central angle. Default is Math.PI * 2.
3537
</div>

docs/api/extras/geometries/SphereGeometry.html

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ <h1>[name]</h1>
1414
<div class="desc">A class for generating sphere geometries</div>
1515

1616
<h2>Example</h2>
17+
18+
<iframe src='../../../scenes/geometry-browser.html#SphereGeometry'></iframe>
1719

1820
<code>var geometry = new THREE.SphereGeometry( 5, 32, 32 );
1921
var material = new THREE.MeshBasicMaterial( {color: 0xffff00} );

docs/api/extras/geometries/TextGeometry.html

Lines changed: 84 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,14 @@ <h1>[name]</h1>
1313

1414
<div class="desc">This object creates a 3D object of text as a single object.</div>
1515

16+
<h2>Example</h2>
17+
18+
<iframe src='../../../scenes/geometry-browser.html#TextGeometry'></iframe>
19+
20+
<div>
21+
[example:webgl_geometry_text geometry / text ]<br/>
22+
[example:webgl_geometry_text2 geometry / text2 ]
23+
</div>
1624

1725
<h2>Constructor</h2>
1826

@@ -24,7 +32,7 @@ <h3>[name]([page:String text], [page:Object parameters])</h3>
2432
<ul>
2533
<li>size — Float. Size of the text.</li>
2634
<li>height — Float. Thickness to extrude text. Default is 50.</li>
27-
<li>curveSegments — Integer. Number of points on the curves.</li>
35+
<li>curveSegments — Integer. Number of points on the curves. Default is 12.</li>
2836
<li>font — String. Font name.</li>
2937
<li>weight — String. Font weight (normal, bold).</li>
3038
<li>style — String. Font style (normal, italics).</li>
@@ -34,7 +42,81 @@ <h3>[name]([page:String text], [page:Object parameters])</h3>
3442
</ul>
3543
</div>
3644

37-
45+
<h2>Available Fonts</h2>
46+
47+
<div>
48+
TextGeometry uses <a href='http://gero3.github.io/facetype.js/' target="_top">typeface.js</a> generated fonts.
49+
Some existing fonts can be found located in <b>/examples/fonts</b> and must be included in the page.
50+
</div>
51+
<table>
52+
<tr>
53+
<th>Font</th>
54+
<th>Weight</th>
55+
<th>Style</th>
56+
<th>File Path</th>
57+
</tr>
58+
<tr>
59+
<td>helvetiker</td>
60+
<td>normal</td>
61+
<td>normal</td>
62+
<td>/examples/fonts/helvetiker_regular.typeface.js</td>
63+
</tr>
64+
<tr>
65+
<td>helvetiker</td>
66+
<td>bold</td>
67+
<td>normal</td>
68+
<td>/examples/fonts/helvetiker_bold.typeface.js</td>
69+
</tr>
70+
<tr>
71+
<td>optimer</td>
72+
<td>normal</td>
73+
<td>normal</td>
74+
<td>/examples/fonts/optimer_regular.typeface.js</td>
75+
</tr>
76+
<tr>
77+
<td>optimer</td>
78+
<td>bold</td>
79+
<td>normal</td>
80+
<td>/examples/fonts/optimer_bold.typeface.js</td>
81+
</tr>
82+
<tr>
83+
<td>gentilis</td>
84+
<td>normal</td>
85+
<td>normal</td>
86+
<td>/examples/fonts/gentilis_regular.typeface.js</td>
87+
</tr>
88+
<tr>
89+
<td>gentilis</td>
90+
<td>bold</td>
91+
<td>normal</td>
92+
<td>/examples/fonts/gentilis_bold.typeface.js</td>
93+
</tr>
94+
<tr>
95+
<td>driod sans</td>
96+
<td>normal</td>
97+
<td>normal</td>
98+
<td>/examples/fonts/droid/droid_sans_regular.typeface.js</td>
99+
</tr>
100+
<tr>
101+
<td>driod sans</td>
102+
<td>bold</td>
103+
<td>normal</td>
104+
<td>/examples/fonts/droid/droid_sans_bold.typeface.js</td>
105+
</tr>
106+
<tr>
107+
<td>droid serif</td>
108+
<td>normal</td>
109+
<td>normal</td>
110+
<td>/examples/fonts/droid/droid_serif_regular.typeface.js</td>
111+
</tr>
112+
<tr>
113+
<td>droid serif</td>
114+
<td>bold</td>
115+
<td>normal</td>
116+
<td>/examples/fonts/droid/droid_serif_bold.typeface.js</td>
117+
</tr>
118+
</table>
119+
38120
<h2>Source</h2>
39121

40122
[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]

docs/scenes/geometry-browser.html

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,15 @@
3737
<script src="../../build/three.min.js"></script>
3838
<script src='../../examples/js/libs/dat.gui.min.js'></script>
3939
<script src="../../examples/js/controls/OrbitControls.js"></script>
40+
<script src="../../examples/fonts/gentilis_bold.typeface.js"></script>
41+
<script src="../../examples/fonts/gentilis_regular.typeface.js"></script>
42+
<script src="../../examples/fonts/optimer_bold.typeface.js"></script>
43+
<script src="../../examples/fonts/optimer_regular.typeface.js"></script>
44+
<script src="../../examples/fonts/helvetiker_bold.typeface.js"></script>
45+
<script src="../../examples/fonts/helvetiker_regular.typeface.js"></script>
46+
<script src="../../examples/fonts/droid/droid_serif_regular.typeface.js"></script>
47+
<script src="../../examples/fonts/droid/droid_serif_bold.typeface.js"></script>
48+
4049
<script src='js/geometry.js'></script>
4150

4251
<script>
@@ -94,9 +103,9 @@
94103

95104
]
96105

97-
)
106+
);
98107

99-
chooseFromHash( mesh );
108+
var options = chooseFromHash( mesh );
100109

101110
scene.add( mesh );
102111

@@ -108,8 +117,10 @@
108117

109118
var time = Date.now() * 0.001;
110119

111-
mesh.rotation.x += 0.005;
112-
mesh.rotation.y += 0.005;
120+
if( !options.fixed ) {
121+
mesh.rotation.x += 0.005;
122+
mesh.rotation.y += 0.005;
123+
}
113124

114125
renderer.render( scene, camera );
115126

0 commit comments

Comments
 (0)