From 98dabd8fec5d2930add944997577a5f702013736 Mon Sep 17 00:00:00 2001
From: J08nY
Date: Sat, 16 Apr 2016 06:41:19 +0200
Subject: atleast got typescript working
---
Morph.ts | 43 +++++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
create mode 100644 Morph.ts
(limited to 'Morph.ts')
diff --git a/Morph.ts b/Morph.ts
new file mode 100644
index 0000000..f97ea5c
--- /dev/null
+++ b/Morph.ts
@@ -0,0 +1,43 @@
+///
+///
+
+export class Morph extends Physijs.Mesh {
+ faces:number;
+ //TODO, probelm s tym ze ked extendujem Mesh, tak sa nedostanem k Geometry ale iba k BufferGeometry
+
+ constructor(numFaces:number, material:THREE.Material, mass:number) {
+ let geometry = Morph.generateGeometry(numFaces);
+ super(geometry, material, mass);
+ }
+
+ static generateGeometry(numFaces:number):THREE.Geometry {
+ if (numFaces == 4) {
+ return new THREE.TetrahedronGeometry();
+ } else if (numFaces == 6) {
+ return new THREE.BoxGeometry(1, 1, 1, 2, 2, 2);
+ } else if (numFaces == 12) {
+ return new THREE.DodecahedronGeometry(1, 0);
+ } else if (numFaces == 20) {
+ return new THREE.IcosahedronGeometry(1, 0);
+ }
+ return null;
+ }
+
+ private updateGeometry(numFaces:number) {
+ this.faces = numFaces;
+ this.geometry = Morph.generateGeometry(this.faces);
+ }
+
+ shrink(numFaces:number):void {
+ this.updateGeometry(this.faces - numFaces);
+ }
+
+ grow(numFaces:number):void {
+ this.updateGeometry(this.faces + numFaces);
+ }
+
+ wobble():void {
+
+ }
+
+}
\ No newline at end of file
--
cgit v1.2.3-70-g09d2