Page updated: 2018/06/09
What is 'StCAD'?
What
are the features of 'StCAD'?
What
is new in this release?
How to
download, install, patch and quick test 'StCAD'?
Are there
documentation, tutorials or examples?
What
are the known problems?
Where
can I get help with 'StCAD'?
How can I
help?
Disclaimer
What is 'StCAD'?
'StCAD' is a basic 3D CAD
framework in Smalltalk (VisualWorks 8.x). It extends the GF/ST
2D drawing framework into 3D. It also include 'StCAD-Geo'
which is the 3D geometric domain, 'StCAD-Math' which provides
the mathematical support for 3D CAD and motion simulation
computations, and 'StCAD-Doc' which is a simple word
processor. 'StCAD-Math' is also suitable for engineering,
scientific and business computing. The parcels are open source
using MIT License. Users can use these parcels with other
private software to create 3D applications like motion
simulation, finite element analysis, CAD, scientific
visualization, etc.
'StCAD' allows users to create and
manipulate assemblies, which are collections of 3D parts. The
parts are 3D solids, which can be connected by joints,
constraints, contacts, actuators, springs, dampers or forces.
The parts and connections define the structure or mechanism
that the assembly is meant to represent. Animation is
possible, if the user can provide time series of position and
orientation data for the parts.
Users can also obtain output data
in the form of plots and tables. XY plots can be zoomed and
set to equal scales. Data series available include linear and
angular displacements, velocities, accelerations and other
user generated data.
'StCAD' has been used to create a
freeware called 'freeCAD' which is a 3D CAD with Motion
Simulation. For more information visit:
http://www.askoh.com
What are the features of 'StCAD'?
'StCAD' is capable of full 3D
pan, zoom, tilt and rotate. Available solids are extrusions of
rectangles, circles, ellipses and polygons. The solids can be
positioned and oriented exactly in space, as are markers on
the solids. Exact specification of linear and angular
velocities of solids in space are also possible. Mass and
inertia properties can be user specified or automatically
computed based on uniform density. Available joints are
spherical (ball), revolute (pin), translational (slider),
cylindrical, planar, fixed, universal, point in line, point in
plane, parallel, perpendicular, no rotation, constant
velocity, rack pinion, screw. The curve-curve contact allows
liftoffs and collisions based on coefficient of restitution.
Available actuators are rotary and translational. Their
motions are user prescribed functions of time. Forces and
torques are user prescribed functions of time, displacements
and velocities in all three components or along connecting
markers. Example formulas for spring, damper, bushing, beam,
aerodynamic, inverse square law and other forces and torques
are given. Available functions are sqrt, exp, ln, lg, sin,
cos, tan, arctan, arctan2, spline, spectral density. Users can
specify constant gravity of arbitrary magnitude and direction.
Spline function of user data. Random vibration function of
given spectral densities. Fast Fourier Transform of any times
series.
Users need to provide the domain to
simulate the behavior of the system. Simulation progress can
be animated and stopped any time. After simulation, the
computed solution can be used for animation or frame by frame
analysis. Full 3D pan, zoom, tilt and rotate is available
during simulation and animation. Users can also obtain output
data in the form of plots and tables. XY plots can be zoomed
and set to equal scales. Individual parts can be saved into
files and reinserted into any assembly repeatedly. Assemblies
can be saved in binary or tab delimited text format with
textual notes and simulation data for later reload. The
text format allows pre and post processing of assemblies by
other programs, especially spreadsheet programs. 'StCAD' runs
on Windows, Macintosh, Linux PC. Assembly data are unchanged
across platforms.
What is new in this release?
Multibody dynamics code are open
sourced.
How to download, install, patch
and quick test 'StCAD'?
For Windows
Download Personal User License Version from
http://www.cincomsmalltalk.com/main/
You should have version vwX.Y.Z or
vwX.Y.Zpul.
Example: vw8.3pul.
Install in folder like
c:\askoh\visualworks\vwX.Y.Z
Download StCAD open source from
http://askoh.com/stcad/StCADforVW8.3pul.zip
Unzip StCADforVWX.Y.Z.zip into a folder like
c:\askoh\StCAD\vwX.Y.Z\current.
In Windows Explorer, double click on
c:\askoh\visualworks\vwX.Y.Z\image\visual64.im
When prompted, associate *.im with
c:\askoh\visualworks\vwX.Y.Z\bin\win64\VisualWorks.exe
If VisualWorks does not start, edit
c:\askoh\visualworks\vwX.Y.Z\bin\win64\VisualWorks.ini
Make sure the first few
lines have the correct paths to the executables. Like
83 01
c:\askoh\visualworks\vw8.3.1\bin\win\vwnt.exe
83
129 c:\askoh\visualworks\vw8.3.1\bin\win64\vwnt.exe
83 00
c:\askoh\visualworks\vw8.3\bin\win\vwnt.exe
83
128 c:\askoh\visualworks\vw8.3\bin\win64\vwnt.exe
In VisualWorks Launcher,
Click/File/Set VisualWorks Home/
Enter
c:\askoh\visualworks\vwX.Y.Z
Click/OK
This needs to be done only once for each
new version of VisualWorks.
Click/File/Save as/
StCAD.im inside the folder
c:\askoh\StCAD\vwX.Y.Z
Click/File/Exit VisualWorks/
Click/Exit without saving/
DoubleClick/c:\askoh\StCAD\vwX.Y.Z\StCAD.im.
VisualWorks should launch automatically.
Click/Tools/Parcel Manager
In Parcel Manager
Click/Directories tab/
Select/.
RightClick over Jun[X.Y.Z] in right
pane/Load
Jun parcel should be
loaded.
RightClick over StCADBaseVW[X.Y.Z] in right
pane/Load
StCADBaseVW parcel
should be loaded.
RightClick over StCAD[X.Y.Z] in right
pane/Load
StCAD parcel should be
loaded.
StCAD.UI.CADSMEditor
should be open.
In VisualWorks Launcher,
Click/File/Open File/
Select StCAD.ws
Click/File/Save/
To learn more, Click/Explain and submenus.
You must do the exercises described in Click/Explain etc.
To learn VisualWorks Smalltalk, study
C:\askoh\visualworks\vwX.Y.Z\doc\AppDevGuide.pdf
http://www.cincomsmalltalk.com/main/community/resources/tutorials/
Quick test 'freeCAD':
Make sure that the example assemblies (*.asm) are in the
directory of the image.
Click File/Open/Assembly/ to get list of example assemblies.
Choose one, say, fourbar.asm
Click View/Tilt Rotate/ to center the model. Drag the
handles to tilt and rotate the 3D assembly.
Click Simulation/Animation/ to get the animation dialog. Click
Play to start animation.
You can click any View menu item and drag handles, even during
animation.
Please report any problems to
A-S Koh
askoh@askoh.com
Quick start:
Click Explain/Quick Start/ to learn how to build a model from
scratch. Together, the tutorials demonstrate the available
features in 'freeCAD'.
Are there documentation,
tutorials or examples?
'StCAD' is an extension of GF/ST,
so its documentation
("C:\askoh\visualworks\vw8.3.1\contributed\GFST\gfstvw.hlp")
is relevant. Class StCAD.UI.CADApp has some documentation in
class methods. Class StCAD.Math.Help has examples of use for
StCAD.Math.
Inside 'freeCAD', documentation are
collected in a series of menu items labeled 'Explain'. Click
on them anytime. But you MUST run the tutorials to learn
'freeCAD'. Click Explain/Quick Start/ for a list of
examples on projectiles, circular motion, relative motion,
pendulums, spring-masses, four bar linkages, piston crank,
gyro, cam follower.
Quick Start Tutorial
video
with sound.
The following videos with sound record the creation of a robot.
peg3a.html
peg3b.html
peg3c.html
peg3d.html
peg3e.html
peg3f.html
peg3g.html
peg3h.html
peg3i.html
peg3j.html
peg3k.html
peg3l.html
The motion simulation
theory is in the journal paper:
Koh,
A-S., and Park, J-P. "Object Oriented Dynamics Simulator,"
Computational Mechanics, Jun 1994, 14(3) 277–287.
Raw implementation
notes are in StCAD_MbD_Theory.zip
Example
Assemblies
What are the known problems?
Please report problems to
A-S Koh
askoh@askoh.com
Where can I get help with
'StCAD'?
For the latest information, free
downloads, patches and examples for 'StCAD', visit:
http://www.askoh.com
To pose a question, submit it to
the mailling list vwnc AT
lists.cs.illinois.edu . Prefix the question with [StCAD]
to distinguish it from other questions in the newsgroup.
Finally, you can email:
A-S Koh
askoh@askoh.com
How can I help?
Your bug reports and suggestions
are most valuable for improvements in 'StCAD'. If you have
code to share so that others can benefit from your work,
please let me and others know about them. I can include them
on this site if you want. Finally, but not least, please tell
your friends and colleagues about 'StCAD'. Thank you very much
for your contributions.
Disclaimer
Copyright 2018 Aik-Siong Koh
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation
files (the "Software"), to deal in the Software without
restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the
Software is furnished to do so, subject to the following
conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the
Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Copyright (C) 2000-2018, A-S Koh,
All Rights Reserved.