Forráskód Böngészése

fixed Mat4 bugs (and by that perforated 3d-snfg)

Alexander Rose 6 éve
szülő
commit
9881fbc395

+ 2 - 2
src/mol-math/linear-algebra/3d/mat4.ts

@@ -1010,8 +1010,8 @@ namespace Mat4 {
     }
 
     const xAxis = Vec3.create(1, 0, 0)
-    const yAxis = Vec3.create(1, 0, 0)
-    const zAxis = Vec3.create(1, 0, 0)
+    const yAxis = Vec3.create(0, 1, 0)
+    const zAxis = Vec3.create(0, 0, 1)
 
     /** Rotation matrix for 90deg around x-axis */
     export const rotX90: ReadonlyMat4 = Mat4.fromRotation(Mat4(), degToRad(90), xAxis)

+ 3 - 3
src/mol-repr/structure/visual/carbohydrate-symbol-mesh.ts

@@ -82,7 +82,7 @@ function createCarbohydrateSymbolMesh(ctx: VisualContext, structure: Structure,
                 Mat4.scaleUniformly(t, t, side)
                 MeshBuilder.addPrimitive(builderState, t, perforatedBox)
                 Mat4.mul(t, t, Mat4.rotZ90X180)
-                builderState.currentGroup = i * 2 + 1
+                builderState.currentGroup += 1
                 MeshBuilder.addPrimitive(builderState, t, perforatedBox)
                 break;
             case SaccharideShapes.FilledCone:
@@ -93,7 +93,7 @@ function createCarbohydrateSymbolMesh(ctx: VisualContext, structure: Structure,
                 Mat4.scaleUniformly(t, t, side * 1.2)
                 MeshBuilder.addPrimitive(builderState, t, perforatedOctagonalPyramid)
                 Mat4.mul(t, t, Mat4.rotZ90)
-                builderState.currentGroup = i * 2 + 1
+                builderState.currentGroup += 1
                 MeshBuilder.addPrimitive(builderState, t, perforatedOctagonalPyramid)
                 break
             case SaccharideShapes.FlatBox:
@@ -116,7 +116,7 @@ function createCarbohydrateSymbolMesh(ctx: VisualContext, structure: Structure,
                 Mat4.scale(t, t, Vec3.set(sVec, side * 1.4, side * 1.4, side * 1.4))
                 MeshBuilder.addPrimitive(builderState, t, perforatedOctahedron)
                 Mat4.mul(t, t, Mat4.rotY90)
-                builderState.currentGroup = i * 2 + 1
+                builderState.currentGroup += 1
                 MeshBuilder.addPrimitive(builderState, t, perforatedOctahedron)
                 break
             case SaccharideShapes.FlatDiamond: