molstar
Version:
A comprehensive macromolecular library.
51 lines • 2.76 kB
JavaScript
/**
* Copyright (c) 2019-2021 mol* contributors, licensed under MIT, See LICENSE file for more info.
*
* @author Alexander Rose <alexander.rose@weirdbyte.de>
*/
Object.defineProperty(exports, "__esModule", { value: true });
require("./index.html");
var util_1 = require("../../mol-canvas3d/util");
var canvas3d_1 = require("../../mol-canvas3d/canvas3d");
var mesh_builder_1 = require("../../mol-geo/geometry/mesh/mesh-builder");
var linear_algebra_1 = require("../../mol-math/linear-algebra");
var prism_1 = require("../../mol-geo/primitive/prism");
var spiked_ball_1 = require("../../mol-geo/primitive/spiked-ball");
var mesh_1 = require("../../mol-geo/geometry/mesh/mesh");
var color_1 = require("../../mol-util/color");
var render_object_1 = require("../../mol-gl/render-object");
var representation_1 = require("../../mol-repr/representation");
var torus_1 = require("../../mol-geo/primitive/torus");
var param_definition_1 = require("../../mol-util/param-definition");
var parent = document.getElementById('app');
parent.style.width = '100%';
parent.style.height = '100%';
var canvas = document.createElement('canvas');
parent.appendChild(canvas);
(0, util_1.resizeCanvas)(canvas, parent);
var canvas3d = canvas3d_1.Canvas3D.create(canvas3d_1.Canvas3DContext.fromCanvas(canvas));
canvas3d.animate();
function meshRepr() {
var builderState = mesh_builder_1.MeshBuilder.createState();
var t = linear_algebra_1.Mat4.identity();
linear_algebra_1.Mat4.scaleUniformly(t, t, 10);
mesh_builder_1.MeshBuilder.addCage(builderState, t, (0, prism_1.HexagonalPrismCage)(), 0.05, 2, 20);
var t2 = linear_algebra_1.Mat4.identity();
linear_algebra_1.Mat4.scaleUniformly(t2, t2, 1);
mesh_builder_1.MeshBuilder.addPrimitive(builderState, t2, (0, spiked_ball_1.SpikedBall)(3));
var t3 = linear_algebra_1.Mat4.identity();
linear_algebra_1.Mat4.scaleUniformly(t3, t3, 8);
mesh_builder_1.MeshBuilder.addPrimitive(builderState, t3, (0, torus_1.Torus)({ tubularSegments: 64, radialSegments: 32, tube: 0.1 }));
var mesh = mesh_builder_1.MeshBuilder.getMesh(builderState);
var props = param_definition_1.ParamDefinition.getDefaultValues(mesh_1.Mesh.Utils.Params);
var values = mesh_1.Mesh.Utils.createValuesSimple(mesh, props, (0, color_1.Color)(0xFF4433), 1);
var state = mesh_1.Mesh.Utils.createRenderableState(props);
var renderObject = (0, render_object_1.createRenderObject)('mesh', values, state, -1);
console.log('mesh', renderObject);
var repr = representation_1.Representation.fromRenderObject('mesh', renderObject);
return repr;
}
canvas3d.add(meshRepr());
canvas3d.requestCameraReset();
//# sourceMappingURL=render-mesh.js.map
;