Difference between revisions of "Template:Jscad"

From BITPlan Wiki
Jump to navigation Jump to search
Line 15: Line 15:
 
[[Category:Template]]
 
[[Category:Template]]
 
</noinclude><includeonly>
 
</noinclude><includeonly>
{{#tag:html|<head>
+
{{#tag:html|
 
   <script src="/extensions/OpenJsCad/lightgl.js"></script>
 
   <script src="/extensions/OpenJsCad/lightgl.js"></script>
 
   <script src="/extensions/OpenJsCad/csg.js"></script>
 
   <script src="/extensions/OpenJsCad/csg.js"></script>
 
   <script src="/extensions/OpenJsCad/openjscad.js"></script>
 
   <script src="/extensions/OpenJsCad/openjscad.js"></script>
 
   <style>
 
   <style>
 
body {
 
  font: 14px/20px 'Helvetica Neue Light', HelveticaNeue-Light, 'Helvetica Neue', Helvetica, Arial, sans-serif;
 
  max-width: 820px;
 
  margin: 0 auto;
 
  padding: 10px;
 
}
 
 
 
pre, code, textarea {
 
pre, code, textarea {
 
   font: 12px/20px Monaco, monospace;
 
   font: 12px/20px Monaco, monospace;
Line 46: Line 38:
 
   outline: none;
 
   outline: none;
 
}
 
}
 
 
canvas { cursor: move; }
 
canvas { cursor: move; }
 
+
</style>
  </style>
 
 
<link rel="stylesheet" href="/extensions/OpenJsCad/openjscad.css" type="text/css">
 
<link rel="stylesheet" href="/extensions/OpenJsCad/openjscad.css" type="text/css">
 
 
<script>
 
<script>
 +
  var gProcessor=null;
 +
  // Show all exceptions to the user:
 +
  OpenJsCad.AlertUserOfUncaughtExceptions();
  
var gProcessor=null;
+
  function onload()
 +
  {
 +
    let viewer = document.getElementById("viewer");
 +
    gProcessor = new OpenJsCad.Processor(viewer);
 +
    updateSolid();
 +
  }
  
// Show all exceptions to the user:
+
   function updateSolid()
OpenJsCad.AlertUserOfUncaughtExceptions();
+
  {
 
+
    gProcessor.setJsCad(document.getElementById('code').value);
function onload()
+
  }
{
 
  let viewer = document.getElementById("viewer");
 
  gProcessor = new OpenJsCad.Processor(viewer);
 
   updateSolid();
 
}
 
 
 
function updateSolid()
 
{
 
  gProcessor.setJsCad(document.getElementById('code').value);
 
}
 
 
</script>
 
</script>
<title>OpenJsCad demo: Parametric Lamp Shade</title>
 
</head>
 
 
<body onload="onload()">
 
<body onload="onload()">
 
<input type="submit" value="Update" onclick="updateSolid(); return false;">
 
<input type="submit" value="Update" onclick="updateSolid(); return false;">
 +
<textarea id='code'>{{{code|}}}</textarea>
 
}}
 
}}
 
</includeonly>
 
</includeonly>

Revision as of 09:18, 10 June 2019

Usage

Put your JSCAD code inside a source tag and add a call of this template

<source lang='javascript'></source>
{{jscad|code=function main() {
}
}}

Example