WWW.DANCAD3D.COM (sm): THE OFFICIAL DANCAD3D (tm) "BETA TEST" WEB SITE.

TERMS OF USE, HOME, INDEX, SHORTCUT, WHAT'S NEW, DOWNLOADS, GET MAIN ZIP, DOCUMENTATION, VIDEO, HOOKUP#1, #2, #3, KEYWORDS

FEATURE FILM 4K+ DIGITAL CINEMA UNCOMPRESSED EDITING AND SOUND MIXING
PLUS DIY MOVIE 35mm FILM SCANNING AND DIY 35mm FILM RECORDER SOFTWARE.
"FREEISH" DI (DIGITAL INTERMEDIATE) SOFTWARE TO DOWNLOAD FOR MAKING
FEATURE MOTION PICTURES FOR CINEMA THEATRE, ULTRA-HD, HD, AND BROADCAST.
WORKS WITH FOOTAGE FROM DIGITAL CINEMA CAMERAS AND MOVIE FILM SCANS.
HIGH DEPTH COLOR CORRECTION. FRAME ACCURATE EDITING. HI-FI SOUND MIXING.

DANCAD3D (tm) DRAWING EDITOR, click on image for more info. and larger images. 3D ROBOTIC ANIMATION, click on image for more info. and larger images. 3D CONTOUR SURFACE, click on image for more info. and larger images. 3D CAM TOOL PATH, click on image for more info. and larger images. STEPPER MOTORS FOR CAM, click on image for more info. and larger images. DANCAM.EXE (tm) OPERATING 3D MILL, click on image for more info. and video. IM HELP STATUS, click on image for more info. and IM address.
Kodak (tm) LAD film negative scan image made with Canon XTi (tm) DSLR. Kinema Edit list Grading Levels #1 color correction tool . Kinema Edit list Grading Curves #1 color correction tool. Kinema Edit list Grading chroma Masking tool Vector display. Kinema Edit list Grading chroma Masking tool Waveform display. Kinema Edit list Grading Sharp/Soft filter tool. Kodak (tm) LAD image color corrected positive.
Click on these thumbnails for related information about my current software, features, and IM support. Hold [Shift] and click [Reload] to refresh IM thumbnail.

If are helping "Beta Test" you should report bugs and feel free to ask questions about the program's commands, it is best to e-mail me at tempnulbox (at) yahoo (dot) com and put "DANCAD3D (tm) 24x7 SUPPORT SUBMISSION" in the email subject line so your mail is not deleted as junk. See Section: 8 for more information about support related issues. I want you to ask questions so long as they are on the subject and relate to the current program's commands. If you do not get some kind of reply assume I did not get your message and resend. All submissions and correspondence become the sole property of Daniel H. Hudgins to do with as he sees fit, so stay on subject.

SECTION: 3.4.52.S
Appendix B: Macro commands starting with S.
This Section, Overview, Steps, Details, and Commands S.

Copyright (C) 1986-2011 by Daniel H. Hudgins, All Rights Reserved.

No part of "This Web Site" (HTML document), including associated files, may be: distributed, sublicensed, transmitted, copied, archived, mirrored, modified, bundled, embedded, sold, given away, rented, loaned, or shared in any form without express written permission in a formal Vendor agreement contract dated and signed in ink obtained directly from Daniel H. Hudgins by registered postal mail. All agreements for permission to distribute expire after a period no greater than one year from the date of the signing of the agreement by Daniel H. Hudgins. See the current "EULA" for information regarding limited copying and storage for the purpose of "Beta Testing" "This Web Site."

To view or use the current version of this Web page you may need to reload or refresh the display of this page by your browser. Just clicking on the browser's [Reload] or [Refresh] icon may not be enough to insure that all of the page's most current contents have been cached and displayed. Some browsers may have additional commands to help display the page's most current contents such as: holding down the [Shift] key and clicking on the [Reload] icon, holding down the [Control] key and clicking on the [Refresh] icon, holding down the [Control] and [Shift] keys and clicking on the [Refresh] icon, pressing the [Control] and [F5] keys, pressing [Control] and the [R] key, or some other combination of keys or clicks. Check to see which commands your HTML browser uses to load the most current page contents into its cache and then to display them onto the screen.

This Web site is dedicated to the thousands of "users" of my programs, those who have helped test my programs over the last 25 or so years, and especially those who shared their experiences with me.

You must read this notice: This is a licensed Web site (HTML document and associated files). You must read and agree to be legally bound in contract by the Terms of Use and conditions given in the End User License Agreement ("EULA"), Legal Notices, Instructions, Warnings, Disclaimers, and all other text in "SECTION: 0" of "This Web Site" (HTML document and associated files) before reading or using any of the information, software programs, and or files, contained in, linked to, and or associated with, "This Web Site" (HTML document and associated files). Any use or "Beta Testing" of "This Web Site" constitutes your acknowledgment of your full agreement with the current End User License Agreement ("EULA") and your decision to have this current license supersede all prior and contemporaneous agreements and understandings. Information and files in "This Web Site" (HTML document and associated files) have been placed here so that long time users of "The Author's" programs DANCAD3D.COM (tm) , DANCAD87.EXE (tm), DANCINEL.EXE (tm), DANCINES.EXE (tm) , DANCAM.EXE (tm) , or DANPLOT.EXE (tm) could help proofread the text of the documentation files or screens displayed, and also help test data files, example files, and or any software programs that might be made available from time to time, to aid "The Author" in finding mistakes, bugs, and other errors, omissions, defects, mistakes, and faults. Everything in "This Web Site" (HTML document and associated files) is "Beta Test", "Beta Code", Experimental, Preliminary, requires proofreading, or is being evaluated for possible revision, and is NOT warranted to be free of defect. To help "The Author" report any bugs, foul-ups, defects, or mistakes that you find, see "SECTION: 8" for instructions. "This Web Site" (HTML document and associated files) and all other files and programs by Daniel H. Hudgins are made available "AS IS" without warranty of any kind express, expressed, or implied. All offers and specifications are subject to change or discontinuation without notice of any kind. Please look over "SECTION: 8" of "This Web Site" before contacting "The Author."


Click here to go back to SECTION 3.0.0.0 Index for documentation pages.
Click here to go back to SECTION 3.4.0.0 Index for supplemental documentation pages.
Click here to go back to SECTION 3.4.52.0 Index for Appendix B pages.
Click here for top of DANCAD3D.COM (tm) Web site home page or here for home page INDEX.
Click here to check the current internet document if you are viewing this from a disk copy.
Note: If you want to go back to the previous link use the [Back] button in your browser.

This Section.

The text in this section was derived from the v2.5 CAD manual, and has been updated somewhat, but differences between different releases of v2.5, v2.6 and v2.7 may mean that some of the information may not apply to the version you are using. Some adjustment may be required for versions prior or subsequent to v2.7A.

You may not distribute, sell, rent, share, or give away these HTML documentation files or printed copies of them. You may not extract text from these HTML documentation files for distribution, sale, rent, sharing, or giving away. You can use the [Print] option in your browser to make one copy for yourself to mark up in order to help me proofread the text for mistakes.

Documents may be available to download from time to time, you can check SECTION: 9 to see what the current situation with regard to downloadable files is. The names of these documentation files may change, and they may be edited, combined, or eliminated in the future, without notice.

You may need to adjust your browser for best viewing of the pre- formatted text by changing the "font" size using the commands in your browser (see the help in your browser, or use the pull-down menus in your HTML browser.) If some letters in words on the screen appear to be missing or scrambled try changing the font size in your browser as this sometimes happens even though the words are spelled correctly in the HTML code.

Use the "Edit, Find in page Ctrl+F" or "Edit, Find (in this page)... Ctrl+F" command in your browser to search for keywords within the documentation text in this HTML page. You will need to search over again in the other pages in this HTML document for the same keyword since your browser may not search for a keyword beyond the current page that is loaded.

Click here to go back to the top of this page.

Overview of Appendix B: Macro commands.

DANCAD3D (tm) macro commands can used to write a macro "program" that will operate DANCAD3D (tm) automatically. DANCAD3D (tm) can also automatically generate an output macro file of these commands while you use the programs menus. Appendix B lists detailed information about many of the individual macro commands.

Click here to go back to the top of this page.

Steps to use Macro commands.

Steps to use Appendix B: Macro commands.

  1. Read this section to learn what commands are available.

  2. Use [W]rite from DANCAD3D (tm)'s main menu to write or edit macros.

  3. Use the automatic [O]utput macro feature to automatically code these macro commands to a file while you use the menu commands.

Click here to go back to the top of this page.

Detailed discussion of Appendix B: Macro commands.

This appendix contains information on the DANCAD3D (tm) macro programming commands that are available for your use in writing automatic CAD-CAE or CAM programs. See the pages in this Web site that link to this page for additional information.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

Appendix B: Macro Commands that start with S.

Below are details about macro commands that start with S.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE 2D

PURPOSE:      To save one or all of the elements in the workspace to a
              2D  real  disk  file with perspective.  SAVE 2D might be
              used to make drawings that have multiple  views  on  one
              page, to use less disk space than the 3D-Quick file type
              for  saving  2D  drawings,  or to preserve a perspective
              view in 2D of some of your 3D elements.  SAVE  2D  saves
              the  currently  selected element,  so you need to select
              the current element before you try to use SAVE  2D.  The
              2D  file  type  is independent of the current video mode
              and therefore might be  used  to  transport  perspective
              views  between  computers  with  different video boards.
              The  2D-Real  files,  produced  by  SAVE  2D,   are  two
              dimensional  perspective  projections of the elements in
              the workspace.  The 2D file type saves a data file  that
              looks  somewhat like what you might see in the main menu
              [P]review command's screen.  You can use the  main  menu
              preview  command to find the values to use with the SAVE
              2D macro command.

MAIN MENU:    [F] [S] [2]  or  [D] [?...] [F] [S]

KEYWORD:      SAVE 2D

PARAMETERS:   9

TYPE:         r......... X degrees rotation -1E18 to 1E18.
              r......... Y degrees rotation -1E18 to 1E18.
              r......... Z degrees rotation -1E18 to 1E18.
              r......... View point distance -1E18 to -1E-18.
              r......... Display scale 1E-18 to 1E18.
              i......... Display mode, use mode 1 normally.
              r......... X shift centering -1E18 to 1E18.
              r......... Y shift centering -1E18 to 1E18.
              f......... Filename to save 2D file under.

FORMAT:       SAVE 2D r r r r r i r r f

EXAMPLE:      # 0 SAVE 2D -20 -20 0 -1E3 240 1 0 0 2D\FLAT.2D
              ; Save in sub-directory 2D

NOTE:         If the world scale is used as the SAVE 2D display  scale
              then  the 2D file will load with the correct proportions
              when the world scale is equal  to  1.  If  the  SAVE  2D
              display  scale  is  set equal to 1 then the 2D file will
              load with the correct proportions when the  world  scale
              is  equal to what the world scale was when you previewed
              the drawing.  Otherwise you will  need  to  use  MAGNIFY
              with  the  reciprocal of the world scale if the reloaded
              2D file is too large or MAGNIFY by the world scale value
              if the reloaded 2D file is to small,  because you forgot
              to  select  the  proper display scale when you saved the
              file originally.  In other words if you save all your 2D
              files with the scale set  to  what  looks  good  in  the
              [P]review  screen  your  2D files will all look the same
              when they are later used with the display scale  set  to
              1,  freeing  you from the need to know the scale of each
              different file since your 2D files are normalized.

HINT:         Use the main menu's [P]review  command  or  the  preview
              from:  [H] [D] [W], [H] [J] [W], [H] [L], or [H] [P] [P]
              from the main menu,  to see how the various  perspective
              factors  will effect the appearance and fit of the final
              image.  See also the Ready command in the Hardcopy  sub-
              menu to convert triangle elements into line elements for
              use with the SAVE 2D command.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE 3D

PURPOSE:      To save one element or all of the elements to a 3D-Quick
              disk file.  The line segment end point x y z values  can
              range  from  1.0E-18  to  1.0E+18.  The  SAVE 3D command
              saves the currently selected element, so you need to use
              the select element macro command before you use SAVE 3D.
              The SAVE ELEMENTS command is an automated version of the
              SAVE 3D macro command that saves  all  the  elements  in
              separate files.

MAIN MENU:    [F] [S] [3]  or  [D] [?...] [F] [S]

KEYWORD:      SAVE 3D  or SAVE 3

PARAMETERS:   1

TYPE:         f......... Filename to save 3D data under.

FORMAT:       SAVE 3D f

EXAMPLE:      # 255 SAVE 3D C:\3D\LONG.1 ; Save in sub-directory 3D.

              INIT
              LOAD REAL V130_FILE.3D
              # 1 SAVE 3D V20_FILE.3D    ; Update an old file.

              ; Start Convert Alias file set from ASCII to 3D-Quick.
              NAME 0 = ALIAS\ELE1 0      ; Declare file set name.
              :LABEL                     ; Top of loop label.
              INIT                       ; Clear workspace.
              LOAD ASCII  NAME 0 NEXT    ; Start with ALIAS\ELE1.1.
              # 1 SAVE 3D NAME 0 HERE    ; Repeat file name.
              LOOP :LABEL 35                   ; 36 files in set.
              ; End Convert ASCII to 3D-Quick.

NOTE:         The program DANCAD87 (tm) v2.5,  v2.6,  v2.7 and so  on,
              i.e.   the  80x87  version  of  DANCAD3D  (tm),  uses  a
              different  numeric  format  that  is  incompatible  with
              DANCAD3D   (tm)'s   3D-Quick  files  made  by  SAVE  3D,
              therefore you will need to use the ASCII  file  type  to
              exchange data with the regular DANCAD3D (tm) version.

HINT:         The alias symbol files might load faster if you convert,
              or save, your symbol file sets in the 3D-Quick file type
              for the version of DANCAD3D (tm) that you are using, but
              if  you want to use both DANCAD87 (tm) and DANCAD3D (tm)
              you should use the ASCII file type for the  symbols,  or
              make  3D-Quick  symbol  sets  in  both  '87  and non-'87
              versions.  The *.ALI index file for the symbol set would
              need to be edited to change the "A"s  to  "3"s,  or  the
              other  way  around,  for  the  symbol  file  type  index
              reference if you convert files  from  one  type  to  the
              other.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE ASCII

PURPOSE:      To save one or all element(s) to an ASCII disk file,  or
              you  can  make  a  print-out of your x y z point values.
              SAVE ASCII saves the currently selected element,  so you
              need  to  use  the select element command before you use
              the SAVE ASCII command.

MAIN MENU:    [F] [S] [A]  or  [D] [?...] [F] [S]

KEYWORD:      SAVE ASCII  or  SAVE A

PARAMETERS:   1

TYPE:         f......... Filename or Port name for ASCII data.

FORMAT:       SAVE ASCII f

EXAMPLE:      # 1 SAVE A C:\ASCII\X.1  ; Save in sub-directory ASCII.
              # 2 SAVE ASCII LPT1      ; Send to parallel printer.
              # 3 SAVE ASCII COM2      ; Send to serial printer, use
              ; the DOS MODE command to set up the serial port first.

              # 0 SAVE ASCII FIX.ASC   ; If  you  get   your   drawing
              ; messed up you can save the elements as an  ASCII  file
              ; from  the  workspace and then load the ASCII file into
              ; the [W]rite command to save the good parts of the data
              ; out as blocks of text  to  DANCAD3D  (tm)  ASCII  type
              ; files.  Be  sure to put ENTER on the top line,  of the
              ; new ASCII data files you are creating, and 0 0 0 0 0 0
              ; 0 0 0 0 on the last line of the ASCII data  files  you
              ; are creating.  See also the ENTER command.

HINT:         Use  the  ASCII  file  type to transfer data between the
              8087 and non-8087 versions of DANCAD3D (tm) v2.5,  v2.6,
              v2.7 and so on,  If you want you write your own programs
              to manipulate or import data from DANCAD3D (tm) you  can
              use the ASCII file type.  The ASCII files have generally
              been  tabulated  to  make  reading  and  writing to them
              easier,  but only one  space  is  required  between  the
              values on each line of data in the ASCII file.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE BMP

PURPOSE:      To save graphics mode screen to a standard BMP file, see
              also  SAVE  PIXEL and GRAPH_MODE.  Might be used to save
              color hidden line displays  to  a  BMP  file  for  color
              printing by other graphics programs that use the Windows
              (tm) printer drivers.  Two types  of  BMP  file  can  be
              saved,  8 bpp and 24 bpp, which one depends on the video
              graphics mode set when SAVE BMP is  called.  Revised  in
              v2.7G.

MAIN MENU:    [F] [S] [I] [?] [B]

KEYWORD:      SAVE BMP

PARAMETERS:   2

TYPE:         i......... Output type mode where:
                         8 = 8 bpp 256 palette mode color or gray tone.
                         24 = 24 bpp "true-color" 16,777,216 values.

              f......... Filename for BMP data.

FORMAT:       SAVE BMP i f

EXAMPLE:      GRAPH_MODE S640C256
              SAVE BMP 8 SOMEFILE.BMP
              GRAPH_MODE SEEK 0 640 480 24
              SAVE BMP 24 SOMEFILE.BMP

NOTE:         The  size  of  the  drawing  in  pixels  depends  on the
              graphics  mode  selected  when  the  BMP  file is saved.
              Larger  "line  art" BMP files can be saved using the JET
              commands.  Larger 24 bpp BMP color files can be saved by
              using the GRAPH_MODE BMP or GRAPH_MODE F0B24 modes  with
              the DISPLAY command,  in that case DISPLAY saves the BMP
              file since nothing is displayed on the video screen.

              When saving 2,  4,  or 16 color graphics modes,  i.e.  1
              bpp, 2 bpp,  and 4 bpp,  as 8 bpp BMP files the extra of
              the 256 palette entries are not normally used in the BMP
              file  made.  The  number of palette entries used depends
              on the line colors in  the  drawing,  the  display  mode
              selected,  the  current  video  palette used,  and other
              factors.

              When a 1,  2,  4,  or 8 bpp video mode has been selected
              you  should  use  the SAVE BMP 8 command option.  When a
              15, 16,  24,  or 32 bpp video mode has been selected you
              should  use  the  SAVE BMP 24 option.  When 15 or 16 bpp
              video modes are used the dithering  variable  should  be
              adjusted  for  the DISPLAY command to avoid tone banding
              in the shading that may carry over into  the  conversion
              from  15 bpp or 16 bpp to 24 bpp.  There is no loss when
              going from 32 bpp video modes to 24 bpp BMP files  since
              8 of the 32 bits used in the video buffer for each pixel
              are  just  filler,  and  only 24 bits are used for color
              data.

HINT:         There are several ways that BMP files might be saved and
              loaded with macro commands:

              UTILITY BMP256_TO_ASCII,  can be used to load  a  8  bpp
              (256  palette  mode color or gray tone) *.BMP image file
              and convert it into an ASCII file  that  can  be  loaded
              into the drawing workspace using the LOAD ASCII command.
              Various  modes  can  convert the BMP image into 2D or 3D
              lines or triangles for use with different display  modes
              or for use as a tool path for use with the CAM programs.
              In BMP files saved from some graphics programs it may be
              best  to crop the image in the BMP file to have a number
              of horizontal pixels that is an even multiple of 8,  and
              total pixels that are an even multiple of 32.

              UTILITY  BMP256OIL,  works  a  little  like  the UTILITY
              BMP256_TO_ASCII and also converts BMP 8 bpp file  to  an
              ASCII  file,  but  has the ability to select just one of
              the 256 palette mode colors or gray tones.  By selecting
              just one of the colors or gray tones you may be able  to
              make  a  tool path file to apply just one color of paint
              or the equivalent at a time.  UTILITY BMP256OIL can  add
              the  motions  to move the brush in and out of the "paint
              pot" so that the brush picks  up  paint  before  drawing
              each  pixel,  or  stroke  of pixels.  In BMP files saved
              from some graphics programs it may be best to  crop  the
              image  in  the  BMP  file to have a number of horizontal
              pixels that is an even multiple of 8,  and total  pixels
              that are an even multiple of 32.

              CONVERT  can  convert a 1 bpp "Line Art" BMP file into a
              JET page file,  or convert a JET page file into a 1  bpp
              "Line Art" BMP file.  To make your BMP file this way you
              first  make  a  JET page file,  then use JET ADD to copy
              your drawing lines from the workspace into the JET  page
              file, then CONVERT can read the JET page file and save a
              *.BMP  file  of the JET page.  To load a BMP 1 bpp "Line
              Art" file into the workspace you  would  first  use  JET
              MAKE  to make a JET page file,  then use CONVERT to copy
              the BMP image into that JET page file,  then use the JET
              TRACE  and  possibly  some  of the other JET commands to
              make an ASCII trace of the image in the JET  page  file,
              then  use  the LOAD ASCII file to load the drawing lines
              in the ASCII file into the drawing  workspace.  The  BMP
              file to be loaded must match the pixel size given in the
              JET driver file used to make the JET page file exactly.

              The SAVE BMP command can save the graphics screen as a 8
              bpp  or 24 bpp BMP file.  How many colors or gray tones,
              the BMP file type i.e.  8 bpp or 24 bpp,  and the  image
              size  saved  depends  on the graphics mode set when SAVE
              BMP is called.  Color images made using the hidden  line
              modes can be saved using SAVE BMP,  and possibly  loaded
              into  other  graphics  programs  for  printing  on color
              printers.  In order to save the higher  resolution  SVGA
              color   graphics   modes   your  computer  must  have  a
              compatible SVGA video card with enough memory to display
              those  modes.  On  computers  with  or  without SVGA the
              GRAPH_MODE BMP mode can be used with the DISPLAY command
              to save 24 bpp BMP files in color and of larger sizes if
              needed.

              The LOAD BMP command can load an 8 bpp  or  24  bpp  BMP
              file  into  the  graphics  screen.   Because  the  color
              palette used for the DISPLAY command  can  be  different
              from  the palette in the BMP file,  files not saved from
              DANCAD3D.COM  (tm)   will   probably   require   palette
              conversion  when  being  loaded.  Because of mismatch in
              the colors after palette conversion, better results will
              probably be obtained converting  gray  scale  monochrome
              images  from  BMP  files.   Color  images  that  undergo
              palette  conversion  may  look   somewhat   "posterized"
              depending on the color content in the original BMP file.
              The BMP file to be loaded must match the pixel  size  of
              the  graphics  mode  selected exactly.  24 bpp BMP files
              that load into 24 or 32 bpp video screens do not require
              palette conversion,  and so look about the same as  when
              displayed elsewhere.

              FILES CONVERT can be used to convert a NOR file made  by
              using  DANPLOT.EXE (tm)'s scanning probe mode into a BMP
              file.  This could make a BMP 256 palette mode gray  tone
              file,  but you may be able to convert that to "Line Art"
              with some other graphics program you  probably  have  on
              your  computer.  It  may  be  best  to  select the image
              scanning dimensions that have  a  number  of  horizontal
              pixels  that is an even multiple of 8,  and total pixels
              that are an even multiple of 32 for  compatibility  with
              some programs.

              You  can  try  to  use  the software that came with your
              scanner to edit the BMP files,  and  crop  them  to  the
              right size.  Some programs have problems actually making
              the  image the correct number of horizontal and vertical
              pixels,  you may need to enter a number  one  larger  or
              smaller to actually get the size you want.  You may also
              be  able to use the software that came with your scanner
              to convert images from 8 bpp (256 palette mode color  or
              gray  tone)  to  1 bpp "Line Art" for conversion into my
              programs.  You may also be able to use the software that
              came with your scanner to convert  files  saved  as  BMP
              from  my programs into JPG or GIF for other applications
              such as display on the internet.

              If you want to put a drawing you made with DANCAD3D (tm)
              or  DANCAD87  (tm)  onto the internet first save it as a
              BMP file then use  the  software  that  came  with  your
              scanner or some other program to convert the  1  bpp,  8
              bpp,  or 24 bpp BMP drawing file to  a  24  bpp  palette
              type, if is not already, and "Save As" a JPG.  GIF files
              that  are  8 bpp may show some loss when converting from
              24 bpp BMP files.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE DXF2D

PURPOSE:      To save an element as 2D line data in  experimental  DXF
              file format.  This is for saving 2D line drawings and 2D
              line drawings  of  3D  wire-frame  elements.  The  Ready
              command  in  the  Hardcopy  sub-menu  might  be  used to
              convert triangle elements into  2D  line  type  elements
              that can be saved with this command as 2D line drawings.
              Revised in later revisions of v2.7E.

MAIN MENU:    [F] [S] [I] [?] [D] [2]

KEYWORD:      SAVE DXF2D

PARAMETERS:   9

TYPE:         r......... X degrees rotation -1E18 to 1E18.
              r......... Y degrees rotation -1E18 to 1E18.
              r......... Z degrees rotation -1E18 to 1E18.
              r......... View point distance -1E18 to -1E-18.
              r......... Display scale 1E-18 to 1E18.
              i......... Display mode, use mode 1 normally.
              r......... X shift centering -1E18 to 1E18.
              r......... Y shift centering -1E18 to 1E18.
              f......... Filename to save DXF 2D file under.

FORMAT:       SAVE DXF2D r r r r r i r r f

EXAMPLE:      # 0 SAVE DXF2D -20 -20 0 -1E3 240 1 0 0 SOMEFILE.DXF
              # 1 SAVE DXF2D 0 0 0 -1E18 1 1 0 0 SOMEFILE.DXF

NOTE:         This  is  an  experimental command and may not work with
              other  programs  that  read DXF line data.  This command
              saves the DXF data by using  the  DXF  LINE  entity.  To
              export  drawings see also SAVE STL,  SAVE BMP,  and PLOT
              for saving HPGL or POSTSCRIPT (tm).  The  conversion  of
              the line colors is made by using the conversion table in
              file  DRIVERS\DXFSAVE.CCT.  You  can edit the numbers in
              the right column in that file to  adjust  how  the  line
              color numbers are converted, the left column numbers are
              my 0 to 127 line color indexes, and the right column are
              the  DXF  palette  color  code  numbers.  Changes to the
              screen palette can upset the colors displayed, the *.CCT
              table files assume the default screen palette  is  being
              used.  To  avoid some possible problems with loading the
              saved DXF file you should use  the  MAGNIFY  command  to
              adjust  the  size  of the element to be saved so that it
              fills the Preview screen with the display scale set to a
              value between 0.1 and 1000 or so.  When saving  drawings
              by using the SAVE DXF2D command set the display scale to
              1  if  you want the distance units saved in the DXF file
              to correspond to the distance units in the element being
              saved, e.g. like when using the SAVE 2D command.

HINT:         The  PLOT  command  can  also be used to try to make DXF
              line data.  The SAVE STL and SAVE DXF3DFACE commands can
              save  triangle  data,  and  so may be more useful for 3D
              triangle data.  The SAVE  DXF3DFACE  command  should  be
              used for saving triangle elements as DXF data for use in
              programs  that  read  DXF  type  files  with  the 3DFACE
              entity.  This SAVE DXF2D command might be used  to  save
              2D  perspective  projections  of 3D triangle elements if
              you first use the Ready command in the Hardcopy sub-menu
              to convert the 3D triangle elements into 2D lines,  then
              use  this SAVE DXF2D command to save the 2D line element
              as DXF LINE data.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE DXF3D

PURPOSE:      To  save  an element as 3D line data in DXF experimental
              file format.  This command saves the 3D drawing lines by
              using the DXF 3DLINE entity.  If you  want  to  save  3D
              triangle  elements,  i.e.  for  hidden  line  or  shaded
              display,  use the SAVE DXF3DFACE command  listed  below,
              since this command is only for wire-frame line elements.
              Revised in later revisions of v2.7E.

MAIN MENU:    [F] [S] [I] [?] [D] [3]

KEYWORD:      SAVE DXF3D

PARAMETERS:   1

TYPE:         f......... Filename for DXF data.

FORMAT:       SAVE DXF3D f

EXAMPLE:      # 1 SAVE DXF3D SOMEFILE.DXF

NOTE:         This  is  an  experimental command and may not work with
              other  programs  that  read  DXF  line  data.  To export
              drawings see also SAVE  STL,  SAVE  BMP,  and  PLOT  for
              saving  HPGL  or POSTSCRIPT (tm).  The conversion of the
              line colors is made by using  the  conversion  table  in
              file  DRIVERS\DXFSAVE.CCT.  You  can edit the numbers in
              the right column in that file to  adjust  how  the  line
              color numbers are converted, the left column numbers are
              my 0 to 127 line color indexes, and the right column are
              the  DXF  palette  color  code  numbers.  Changes to the
              screen palette can upset the colors displayed, the *.CCT
              table files assume the default screen palette  is  being
              used.  To  avoid some possible problems with loading the
              saved DXF file you should use  the  MAGNIFY  command  to
              adjust  the  size  of the element to be saved so that it
              fills the Preview screen with the display scale set to a
              value between 0.1 and 1000 or so.

HINT:         The  PLOT  command  can  also be used to try to make DXF
              line data.  The SAVE STL and SAVE DXF3DFACE commands can
              save triangle data,  and so may be more  useful  for  3D
              triangle  data.  See  also the MUTATE command to convert
              triangle elements into  wire-frame  line  elements  that
              this  command might be able to save.  The SAVE DXF3DFACE
              command,  rather than this command,  should be used  for
              saving 3D triangle elements as DXF 3DFACE entity data.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE DXF3DFACE

PURPOSE:      To  save  an  element  as  3D  triangle  data   in   DXF
              experimental  file  format.  This  command  saves the 3D
              triangle element by using the DXF 3DFACE entity.  If you
              want to save 2D line  elements,  i.e.  for  simple  line
              drawings, use the SAVE DXF2D command listed above, since
              this  command  is  only  for 3D triangle elements for 3D
              hidden-line  and  shaded   display.   Added   in   later
              revisions of v2.7E.

MAIN MENU:    [F] [S] [I] [?] [D] [T]

KEYWORD:      SAVE DXF3DFACE

PARAMETERS:   2

TYPE:         f......... Filename for DXF data.

              i......... mode
                         1 = convert to single 3DFACE triangles.
                         2 = convert to back-to-back triangles.

FORMAT:       SAVE DXF3DFACE i f

EXAMPLE:      # 1 SAVE DXF3DFACE 1 SOMEFILE.DXF
              # 1 SAVE DXF3DFACE 2 SOMEFILE.DXF

NOTE:         This  is  an  experimental command and may not work with
              other  programs  that read DXF triangle data.  To export
              drawings see also SAVE  STL,  SAVE  BMP,  and  PLOT  for
              saving  HPGL  or POSTSCRIPT (tm).  The conversion of the
              line colors is made by using  the  conversion  table  in
              file  DRIVERS\DXFSAVE.CCT.  You  can edit the numbers in
              the right column in that file to  adjust  how  the  line
              color numbers are converted, the left column numbers are
              my 0 to 127 line color indexes, and the right column are
              the  DXF  palette  color  code  numbers.  Changes to the
              screen palette can upset the colors displayed, the *.CCT
              table files assume the default screen palette  is  being
              used.

HINT:         The  STL file format can save triangle data,  and so may
              be more useful in some cases.  It is important that  you
              draw the triangle elements properly in order for them to
              display  as  you  would like in some other program.  The
              triangle's  normals  need  to  point  in   the   correct
              direction, i.e.  outside of the element, or you will see
              "holes" in the element when it is displayed  as  hidden-
              line  or  shaded  solid  and such.  In cases where holes
              appear when the DXF file  is  displayed  in  some  other
              program  even in those elements that display properly in
              my CAD programs while using the  shaded  display  modes,
              you  might  try mode 2 which saves two triangles back to
              back with  normals  pointing  both  ways,  in  that  way
              hopefully any "holes" will be filled in when the element
              is  displayed  in the other program.  If you want to use
              my CAD programs to create 3D triangle elements, and then
              render the elements in some other programs  for  special
              applications,  saving  the  elements  by  using  the DXF
              3DFACE entity may be your  best  choice.  Some  programs
              may  ignore  the DXF colors and edge attributes,  so you
              may need to fiddle with things in the other  program  to
              restore  the  look you are after.  See also the LOAD DXF
              file command to load 3DFACE  type  elements,  e.g.  from
              www.3DCAFE.com and such.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE ELEMENTS

PURPOSE:      To save all the elements in the workspace to  a  set  of
              3D-Quick disk files where the last three  characters  of
              the  file's  filename  are  the  element's number in the
              workspace for each  element.  Elements  saved  with  the
              SAVE ELEMENTS command will have their individual element
              centers  restored  when you use LOAD ELEMENTS to re-load
              the elements.  A special five letter  filename  is  used
              since  a  three digit number is appended to the filename
              to   correspond   the   the   elements   number,    i.e.
              path\namex001.3DE, path\namex002.3DE, and so on.  If the
              workspace  is  not empty when the set of elements is re-
              loaded the first element will be the next element  after
              those    already    in    the   workspace.    The   file
              path\namexSET.3DE contains the  values  of  the  centers
              that the elements had before they were saved.

MAIN MENU:    [F] [?...] [E]  or  [D] [?...] [B]  or
              [Q] [S]  or  [W] [S]

KEYWORD:      SAVE ELEMENTS  or  SAVE E

PARAMETERS:   1

TYPE:         f......... Special  filename  with only 5 letters in the
                         filename   part,   e.g.   PATH\12345.EXT  the
                         filename will have  3  digits  added  to  the
                         right  side  of  the  filename  that  are the
                         element numbers from the workspace  when  the
                         files are saved, i.e. PATH\12345001.EXE would
                         have  been  element  one,   PATH\12345002.EXE
                         would have been element number  two,  and  so
                         on.

FORMAT:       SAVE ELEMENTS f

EXAMPLE:      SAVE E C:\WORK\JOB_1.3DE

              NAME 1 = ARRAY 0
              :MARK2
               SAVE E NAME 1 NEXT
               # 2 ROTATE C 0 0 1.40625
              LOOP :MARK2 256

NOTE:         The element set file naming convention is:
              D:\PATH\ABCDE001.EXT for element number 1,
              D:\PATH\ABCDE002.EXT for element number 2,
              D:\PATH\ABCDE003.EXT for element number 3,
              D:\PATH\ABCDE???.EXT and so on
              D:\PATH\ABCDE256.EXT up to the last element
              D:\PATH\ABCDESET.EXT then the set of centers are saved.

HINT:         Use SAVE ELEMENTS whenever you need to back up what  you
              are making, drawing, or editing in the workspace so that
              you can continue from where your had been when you saved
              the  back  up  files  if  something  goes  wrong and you
              destroy your drawing elements,  or need to go  back  and
              make revisions to the drawing.  When drawing be sure and
              use  the  [B]egin command in the [E]lements drawing sub-
              menu so that your drawing will be broken  into  elements
              that  can be manipulated independently.  If you load two
              or  more  sets  of  elements  without  initializing  the
              workspace  in  between  the loading of the element sets,
              the element numbers become consecutive.  That is, if you
              load two sets of ten elements,  then save that workspace
              as  a  set  of  elements  the  new set will number up to
              twenty.  See also LOAD 3D to be able to load  individual
              element  files  saved by SAVE ELEMENTS.  If you use LOAD
              3D to load just one element from a set saved  with  SAVE
              ELEMENTS  you will need to use the CENTER command to set
              the elements center to the right  point.  By  using  the
              NAME  command  you  can  save  or load arrays of element
              sets,  you can get up to 1099  sets  of  999  (in  v2.6)
              elements under a single file name, e.g.  FNAME001.-99 to
              FNAME999.999.  See  the  FILES  RELEASE command to erase
              sets of  files.  See  also  the  SPLIT  menu  and  macro
              command which will let you split up one element into two
              or  more  elements,  which  might be useful for when you
              want to turn a drawing saved as one element into several
              elements for editing,  and  the  saving  with  the  SAVE
              ELEMENTS  command.  You can use the [F]ind-points in the
              drawing editors [L]ines sub-menu to help find  the  line
              numbers to split your elements at.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE FONT

PURPOSE:      To  save  the font currently in the font table to a disk
              file for later use.  Makes the type of font file used by
              DANCAD3D (tm)'s calligraphy commands.

MAIN MENU:    [F] [S] [F]

KEYWORD:      SAVE FONT

PARAMETERS:   1

TYPE:         f......... Filename to save font under.

FORMAT:       SAVE FONT f

EXAMPLE:      SAVE F FONTS\INTRNAT1.FON

              LOAD FONT FONTS\INTRNAT2.FON
              SAVE TABLE 32 126 FONTS\INTRNAT2
              INIT
              LOAD WORKSPACE 32 126 FONTS\INTRNAT2
              # 0 ROTATE Z 0 0 90
              SAVE WORKSPACE 32 126 FONTS\MYROTF2
              LOAD TABLE 32 126 FONTS\MYROTF2
              SAVE FONT FONTS\MYROTF2.FON

HINT:         Use this command  as  the  final  step  in  creating  or
              editing  a font so that a *.FON font file will be formed
              on the disk that is in  the  special  compressed  format
              used  by  the  calligraphy  commands.  This  is the file
              format used by the example *.FON files included  on  the
              set of disks.  When creating fonts you should try to use
              the fewest line vectors possible since the font table is
              of fixed size, and when you use the font you do not want
              to  fill  up  the  workspace  with  only  a few words of
              lettering.  Study the example fonts to see how they were
              constructed.  The Alias symbol feature can be used as an
              alternative to the calligraphy commands where fonts  are
              to  complex  to fit in the calligraphy font table.  When
              you use the Alias symbol files for designing a font  you
              will  need  to make two alias index files since one will
              be needed for the upper case and another for  the  lower
              case.  When the Alias index files are used for lettering
              you  can  use  the automatic drag option from the [PgUp]
              drawing command to  visually  position  the  characters.
              Curves  in  your  alias  fonts can be made smooth as you
              have lines available for in  the  workspace,  since  the
              limitations  of  the  size  of  the font table would not
              apply.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE GCODE

PURPOSE:      To save the element in workspace to a G&M Code standard
              type file.  This is an  experimental  command  that  was
              revised  as  part  of  v2.7C to work with the LOAD GCODE
              command,  and only supports a sub-set of  the  G  codes.
              See  also the output G code feature in the [N]C sub-menu
              of the drawing editor in DANCAD3D (tm) and DANCAD87 (tm)
              since they can output files that are somewhat different.

MAIN MENU:    [F] [S] [I] [?] [G]

KEYWORD:      SAVE GCODE

PARAMETERS:   1

TYPE:         f......... Filename to save tool path under.

FORMAT:       SAVE GCODE f

EXAMPLE:      LET$ READABLE.VAR = "Some Man Readable text"
              LOAD CONFIG GSAVE DRIVERS\GSAVDFLT.CFG
              #1 SAVE GCODE SOMEFILE.G

NOTE:         Always  check  the  loading  of  files  saved  with this
              command since other programs may not read  the  file  as
              you expect it to be read.  This command only uses a sub-
              set of the codes,  and may vary from standard file types
              in some ways.  Always select the element to save  before
              using this command with the # i macro command.  The SAVE
              GCODE  command  uses the file(s) DRIVERS\GSAV????.CFG to
              store the configuration of how  you  want  the  G  codes
              saved.   Since   the  two  CAD  programs  use  the  same
              configuration files,  you might configure by using  both
              CAD  programs  by using the commands in their Files Save
              Industry G code Install sub-menus.  If you want to  back
              up  the default configuration file you can use the Files
              Copy command to copy  the  configuration  files  in  the
              DRIVERS\    sub-directory   and   alter   the   original
              configuration  with  the  commands  in  the  Files  Save
              Industry G code sub-menu.

              In  order  to  enable the generation of the man readable
              codes  you  need  to  select   that   feature   in   the
              configuration  file  by  using the Files Save Industry G
              code  Install  command.   The   string   variable   file
              READABLE.VAR  is erased by SAVE GCODE and so needs to be
              assigned each time SAVE GCODE is to be used.

              You can use the Edit Block command in the  CAD  programs
              Calligraphy  sub-menu  to  generate  International  text
              strings  for  use  with  the  man  readable  punch  tape
              feature.  The  *.F08  font for the man readable codes is
              selected in the driver file.  See also the  tutorial  on
              making  fonts  for  some information about how you might
              make your own *.F08 fonts.  In order  to  convert  *.FON
              files  into,  *.808  and  then  to  *.F08  files the CAD
              programs need to be running in CGA video mode, since the
              other video modes produce *.F14 files that will not work
              properly for making man  readable  codes  on  the  punch
              tapes.

              The  Save  G code command ignores dotted lines,  so line
              style attribute 81 is used for "phantom" arc  lines.  In
              order  to  save G02 and G03 from Save G code the "stick"
              arc lines are drawn with dotted style attribute  82  for
              G02 and combination dotted and dashed style attribute 83
              for  G03.  You  can  also  select arc motion for various
              line colors in the table, e.g.  G02 for colors 102, 112,
              and 122, or G03 for colors 103,  113,  or 123.  The line
              style  attribute  supersedes the motion type selected in
              the table,  so you can leave all of the settings in  the
              table  as  G00  or  G01 and the arcs can still be output
              using the style attribute,  which makes the selection of
              the  feed  rates  simpler.  The  "stick" arcs are just a
              line of style attribute 82 or  83  drawn  from  the  arc
              center  to the arc end point.  The starting point of the
              arc is assumed to be the last point of the previous line
              segment,  so the element to save  cannot  start  with  a
              stick  arc,  there  must  be a G00 or G01 line,  or dot,
              drawn before the stick arc line.  The [A]rc  command  in
              the  drawing  editor's  [N]C  sub  menu  can  be used to
              generate the Phantom or stick  arc  lines  for  you.  If
              Normal  line  segment  arcs  are  drawn  with  the [A]rc
              command they will be  saved  by  using  many  small  G01
              movements  (do not use G00 motion type for saving curved
              lines.)

HINT:         G code files can be saved in  two  ways,  you  can  draw
              lines normally in DANCAD3D (tm)'s workspace and use  the
              SAVE  GCODE  command,  or  you  can use the G code teach
              output file that can be turned on in the drawing  editor
              [N]C  sub-menu.  Both  the  SAVE  GCODE,  and the G code
              output file can save rapid,  linear,  and arc  movements
              with the G codes G00,  G01, G02, and G03, but the output
              G cannot save odd shapes or shapes drawn  with  many  of
              the  commands  in  the  drawing editor that are normally
              used in drawing.  Odd shapes and  curves  that  are  not
              drawn  using the stick arc lines are saved by the Save G
              code command as many short G01 movements.  You  can  use
              the  [W]rite  command  to  combine  files  saved by both
              methods in order to gain the benefits of  both  methods.
              Use  the  Save  G code Install command in the Files Save
              Industry sub-menu to set up how the file is to be saved.
              The same drivers that are  used  for  the  Save  G  code
              command  are  used with the G output in order to control
              the formatting of the numbers and such, but the G output
              is non-modal since each movement is output separately to
              the G output file,  therefore the modal options  in  the
              configuration file will not work with the G output,  but
              should work with the Save G code command.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE PIXEL

PURPOSE:      To save the video screen to disk as an image of what  is
              currently displayed on the video screen, in video pixels
              at  the  current  video  screen  resolution.  The  macro
              command  LOAD  PIXEL  can  be  used  at  a later time to
              display of backgrounds for drawing over or  building  up
              an  "unlimited"  number  of  lines  on  the screen.  The
              resolution of the pixel file depends on the  video  mode
              set  when  DANCAD3D  (tm) is run for the first time.  To
              change the  operating  video  mode,  by  means  of,  the
              [V]ideo option in DANCAD3D (tm)'s opening menu, from the
              video  mode  that  you selected when you ran the program
              for the first time,  quit the program back  to  the  DOS
              prompt,  run the program again,  and select [V]ideo from
              the small menu that comes up over  the  opening  screen.
              See  also the GRAPH_MODE and the DISPLAY macro commands.
              Pixel files can be used to display computer animation on
              your video screen,  each frame of the animation would be
              saved using the SAVE PIXEL macro command, then the macro
              ANIMATE  command would be used to reload the pixel frame
              files quickly back on to the video screen,  or the pixel
              frame  files  can  be displayed one at a time for a cine
              film recorder to make  an  animated  movie.  Saving  the
              drawing  editor  screen  as  a  Pixel  file was added in
              v2.7A, read the information below.

MAIN MENU:    [P] ... [S]
              (When display is done press [S] then type filename.)
              or
              [F] [S] [P]

KEYWORD:      SAVE PIXEL

PARAMETERS:   1

TYPE:         f......... Filename to save pixel file under.

FORMAT:       SAVE PIXEL f

EXAMPLE:      SAVE PIX C:\PIXEL\FRAME.1 ; Save video display only.

              INIT  GRAPH_MODE COLOR
              POLYGON 18 18 2  1 1 0 0
              LET |SCALE = 240
              NAME 0 = FRAME 0
              :LOOP_LABEL
              # 1 DISPLAY 0 0 0 -1E18 |SCALE  1 0 0
              SAVE PIXEL NAME 0 NEXT ; i.e. FRAME.1, FRAME.2
              LET |SCALE = [ |SCALE * 0.707 ]
              LOOP :LOOP_LABEL 23

NOTE:         In the drawing editor you can save the screen as a Pixel
              file by turning on the  output  macro  file,  any  dummy
              macro  name  will  work,  and selecting the "note macro"
              command by pressing the [;] key in one of the menus (the
              [;] key command is not listed in some of the menus,  but
              works  in  some of the unmarked menus anyway) then enter
              exactly,

              "; COMMAND OVERRIDE SAVE PIXEL"

              without the quotation marks (it must be in all  caps  as
              shown)  you  will then get a prompt asking for the pixel
              filename,  after you enter the filename the screen  will
              be  saved  to  a  disk file.  You can convert that Pixel
              file to BMP with the [E]xport  command  in  the  [F]iles
              [U]tilities  [B]MP  [E]xport  sub-menu.  Saving  of  the
              Drawing Editor screen as a  Pixel  file  probably  works
              best  when  the  color VGA drawing editor video mode was
              selected, but all modes may work.

              You can save the Main  Menu  [P]review  graphics  screen
              display  as  a  Pixel  file by pressing [S] or selecting
              [S]ave  from  the  [P]review  pop-up  menu  you  get  by
              pressing  [Return] after the screen finishes displaying.
              The [P]review command will also save a [B]MP file of the
              [P]review screen by pressing [B] or selecting [B]MP from
              the pop-up menu.  The SVGA display  modes  will  provide
              greater detail when saving the [P]review display screen,
              so  use  them  if  your  video board and monitor support
              SVGA.

HINT:         When you need  to  combine  views  that  have  different
              perspective values you can  DISPLAY  the  views  on  the
              screen  then save the screen as a pixel file,  then load
              the pixel file back as a background  and  add  the  next
              displayed perspective and then save the combination, and
              then  reload  that  pixel file and display over it again
              and again until all the necessary layers have been built
              up.  You can load a pixel file that contains:  formatted
              text,  box  outlines,  or other patterns as a background
              for your animation.  Unlike the SAVE 2D command you must
              use the macro DISPLAY command before you  use  the  SAVE
              PIXEL command in order for the elements in the workspace
              to  be recorded in the pixel file saved.  Before you use
              the macro DISPLAY command to fill the screen you need to
              use the GRAPH macro command to set  the  graphics  mode.
              The GRAPH command is also used to clear the video screen
              between drawing frames.  See also the ANIMATE command to
              load  and display frame files saved with this SAVE PIXEL
              macro command.  See also the  GRAPH_MODE,  ANIMATE,  and
              SAVE BMP macro commands.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE REAL

PURPOSE:      To save an element to a Real  3D  disk  file.  The  Real
              filetype  was  used  by  versions prior to v2.0,  and is
              included for compatibly with older  drawing  files.  You
              should  probably  use  the  SAVE  3D  command if you are
              making new drawings for use with v2.6  or  a  subsequent
              version.

MAIN MENU:    [F] [S] [R]

KEYWORD:      SAVE REAL

PARAMETERS:   1

TYPE:         f......... Filename to save as SAVE REAL type.

FORMAT:       SAVE REAL f

EXAMPLE:      # 1 SAVE REAL C:\REAL\DEEP.1 ; Save to sub-directory.
              # 1 SAVE REAL A:MYFILE.R3D   ; Save to A: drive.
              # 1 SAVE REAL NAME 5 HERE    ; Use automatic name.

NOTE:         This command should only be used with DANCAD3D (tm) v2.x
              and  not  with DANCAD87 v2.x to load drawings from older
              versions of DANCAD3D (tm).  This file type can  be  read
              by  DANCAD3D (tm) v1.x if saved with DANCAD3D (tm) v2.x.
              The line color and type information is stored but is not
              read by v1.x.  Version 2.x can read the line  color  and
              type   information,   therefore   this  is  an  upwardly
              compatible filetype.  Use the 3D-Quick file  type  where
              possible since type 3D-Quick is used in v2.6.  The macro
              command SAVE ELEMENTS in v1.xx used data files something
              like  the SAVE REAL file type,  which was called SAVE 3D
              then,  but the files where  numbered  using  the  file's
              extension.  Files  made  with  v2.6  and  subsequent may
              contain too many lines to be loaded into v2.0x or  v1.xx
              because the workspace can now be much larger,  therefore
              it is possible  to  save  a  drawing  with  the  current
              versions  that  will  be too large to fit into the older
              versions.

HINT:         You should convert any old drawings you have from  older
              versions of DANCAD3D (tm) to the newer 3D-Quick or ASCII
              file types.  You  can  then  use  the  commands  in  the
              [L]ines  drawing  sub-menu  to edit the drawings and add
              thickened  lines  and  lines  of  different  styles  and
              colors.   See   the  LINETYPE  command  to  color  whole
              elements in your drawings.  You would only use this SAVE
              REAL command to save a file so that you  could  use  the
              real type file with an older version of DANCAD3D (tm).

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE STL

PURPOSE:      To save an element to a standard STL ASCII type 3D  disk
              file.  This is an experimental command added in v2.7A.

MAIN MENU:    [F] [S] [I] [?] [S]

KEYWORD:      SAVE STL

PARAMETERS:   2

TYPE:         i......... Mode where:
                         0 = save with normals all zeros mode.
                         1 = save with normals of unit length
                             from origin.

              f......... Filename to save as ASCII type STL file.

FORMAT:       SAVE STL i f

EXAMPLE:      # 1 SAVE STL 0 SOMEFILE.STL ; normals all zero.
              # 2 SAVE STL 1 FILENAME.STL ; unit normals from origin.

NOTE:         This command should only be used when an ASCII type  STL
              file  is  to be used,  this command does not make binary
              STL files in v2.7A.

HINT:         When you save the STL data you have  two  options,  save
              the  normals using the current p3-p4 line segment of the
              triangles in the element (p3-p4 is the  second  line  of
              each  triangle  drawn),  or zero the normal data and let
              the program loading the STL file create its own  normals
              data  from  the direction of the lines in the triangles.
              If the program you load the STL files finds all  of  the
              triangles  going the wrong way around the REVERT command
              might be  able  to  be  used  to  reverse  the  triangle
              direction  in the element before it is saved as STL.  If
              only some of the triangles  are  the  wrong  way  around
              (facing  the  inside  of  the  object  drawn)  you  will
              probably need to edit the output macro you created while
              drawing the elements in order to REVERT only  the  parts
              that where drawn backwards.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE TABLE

PURPOSE:      To save the font currently in the font table to a set of
              ASCII  type  data files with the numbered file extension
              equal to the ASCII code  number,  0  to  255,  for  each
              character.  This  command  is used for making or editing
              font files for use with the  LETTERING,  and  BLOCK_TEXT
              commands.   This  command  is  used  to  "break  up"  or
              "explode" a font into separate drawing  files  for  each
              character.

MAIN MENU:    [F] [S] [T]

KEYWORD:      SAVE TABLE

PARAMETERS:   3

TYPE:         i......... Low ASCII number of set (e.g. 1 to 32.)
              i......... High ASCII number of set (e.g. 127 to 255.)
              f......... Filename to save font under, no extension.

FORMAT:       SAVE TABLE i i f

EXAMPLE:      SAVE T 32 127 C:\FONTS\INTRNAT1

HINT:         If  you  want  to  explode  a  font  file  into a set of
              DANCAD3D  (tm)  ASCII  data  files  that  you  can  edit
              individually then use this command  and  then  use  LOAD
              ASCII  to bring the file for the desired characters into
              the workspace.  The files produced, by this command, are
              numbered by their file name's extension corresponding to
              the  characters  ASCII  code  number.   See   the   LOAD
              WORKSPACE  command  if  you  want to alter all the ASCII
              files produced by this command by loading the  character
              files as drawing elements in the workspace,  after which
              you can use FLIP, ROTATE, OFFSET, or MAGNIFY, on all the
              character elements at once, or one at a time.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE WAV

PURPOSE:      To save one or more channel tracks to a *.WAV sound file
              from wave drawing elements  in  the  drawing  workspace.
              This  command  was added in v3.7M and may not be present
              in v2.7x revisions.

MAIN MENU:    [F] [S] [I] [W]

KEYWORD:      SAVE WAV

PARAMETERS:   8

TYPE:         i......... Mode codes (in initial release of v3.7M):
                         10 = Element line second points to samples.
                              The X scale value is not needed for SAVE
                              WAV  mode  10 since it just converts the
                              second point of each  line  into  a  WAV
                              sample, i.e. the X values are not used.

              i......... Channels to save.
                         Number  of  track  channels   including   the
                         selected  element,  i.e.   1=Mono,  2=Stereo,
                         4=Quad, and so on up to the maximum number of
                         track elements,  i.e.  999  in  v3.7M.  Track
                         elements  for  the channels must have element
                         numbers  that  come  in   order   after   the
                         currently  selected  element number used with
                         SAVE WAV.

              r......... Initial Channel Offset.
                         Real -1E18 to +1E18 initial  channel  Y  axis
                         offset.  Default value is 0.  Needs to be set
                         to the center for the selected element,  i.e.
                         first track to save.

              r......... Channel Offset.
                         Real -1E18 to +1E18 channel  Y  axis  offset.
                         For  when  more  than  one  channel  track is
                         saved.  If only saving  one  channel  set  to
                         default value.  Default value is 1 unit.

              r......... Y scale.
                         Real  -1E18  to 1E18 scale for Y axis.  The Y
                         axis is the sample data axis,  so this  value
                         affects the height of the wave form, and is a
                         critical  setting.  Default  value is 1 for 1
                         unit peak-to-peak wave form.

              i......... Bits per Sample, i.e. 8, 16, or 32.
                         32 is not used much and may make a  error  in
                         some  other  programs,  so  try  16.  Default
                         value is 16. 8 is for low quality audio.

              i......... Samples  per  Second for the WAV file to play
                         back at.  Default  value  is  44100.  Typical
                         values are 8000,  11025, 12000, 16000, 22050,
                         24000,  32000,  44100,  and  48000,  although
                         other values may work.

              f......... Filename of WAV file to save from workspace.
                         Path and Filename for *.WAV type file with 44
                         byte header.  File saved will be 8, 16, or 32
                         bits   per   sample  of  one  or  more  track
                         channels.

FORMAT:       SAVE WAV i i r r r i i f

EXAMPLE:      # 1 SAVE WAV 10 2 0 1.0 1.0 16 44100 WAV\SOMENAME.WAV

NOTE:         This  command  is  only for Saving wave drawing elements
              from the drawing workspace to WAV type sound files.  The
              maximum  number  of  track channels may be the number of
              wave elements loaded.  Note that the currently  selected
              element will be for first track drawing element to save,
              see the select element macro command,  i.e.  #.  If more
              than one channel is being saved,  the other channel wave
              elements  need to be in consecutively numbered elements.
              If you save a stereo  2  channel  WAV,  and  you  select
              element  3 as the first track then element 4 must be the
              second track.  All wave track  elements  must  have  the
              same number of line segments.

HINT:         See also  the  WINDOW  (HOLE),  OFFSET,  MAGNIFY,  COPY,
              REVERSE, SPLIT,  FIT CURVE,  and LOAD WAV commands.  The
              APPEND  and  ENTER  macro  commands  might  also  be  of
              interest to generate WAV data drawing elements.


Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE WORKSPACE

PURPOSE:      To  save  the elements in the drawing workspace as ASCII
              files with their extensions numbered according to  their
              element  numbers.  These numbered ASCII files would then
              be loaded with the LOAD TABLE command and saved for  use
              with  the SAVE FONT command when finished.  This command
              is only meant to be used for saving the characters of  a
              font, see the macro command SAVE ELEMENTS if you want to
              save  all the elements in the workspace that are part of
              a drawing you are working on.

MAIN MENU:    [F] [S] [W]

KEYWORD:      SAVE WORKSPACE

PARAMETERS:   3

TYPE:         i......... Low ASCII number of set (e.g. 1 to 32.)
              i......... High ASCII number of set (e.g. 127 to 255.)
              f......... Filename to save workspace by, no extension.

FORMAT:       SAVE WORKSPACE i i f

EXAMPLE:      SAVE WORKSPACE 32 127 C:\FONTS\INTRNAT1

NOTE:         All  character  drawings  should  fall  within  +/-  127
              drawing editor units in the x and y axis, and must be in
              the z=0 plane.  The  standard  em  unit  is  96  drawing
              units.  Select the [F]ont grid from the [G]rid selection
              from  the  [S]et-up  drawing sub menu for a guide to the
              valid font size.  Be sure you turn  the  font  grid  off
              when  you  are  finished  drawing or editing your fonts,
              since you will see a dot at the center of the screen  if
              you  do  not  turn  the font grid off.  If you see spots
              when the grids are off you may have accidentally pressed
              the [Ins] key or the left  mouse  button  while  in  the
              drawing editor,  use the INITIALIZE command to erase all
              the lines in the workspace and see if the dots go away.

HINT:         You  can  use  the  SAVE  ASCII  command instead of this
              command if you only want a few of the  characters  saved
              or want to rearrange the characters relation ship to the
              assigned code numbers in their filename's extension.  If
              you save the character files with different code numbers
              as  their  extension be careful to rename any characters
              you are going  to  overwrite  or  you  will  lose  those
              character's drawing file.  Unless you want to magnify or
              rotate  the  whole font it might be best to use the LOAD
              ASCII command and then the SAVE ASCII  command  to  only
              work on one character in the workspace a a time.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SAVE XASCII

PURPOSE:      To save one or all element(s) to an XASCII disk file, or
              you  can  make  a  print-out of your x y z point values.
              SAVE XASCII saves the currently selected element, so you
              need  to  use  the select element command before you use
              the SAVE XASCII command.  In order to save  ASCII  files
              using  all  exponential notation an additional file type
              was added to the SAVE command, i.e. XASCII, in v2.7I.

MAIN MENU:    [F] [S] [M] [X]  or  [D] [?...] [F] [S]

KEYWORD:      SAVE XASCII  or  SAVE X

PARAMETERS:   1

TYPE:         f......... Filename or Port name for XASCII data.

FORMAT:       SAVE XASCII f

EXAMPLE:      # 1 SAVE X C:\ASCII\X.1  ; Save in sub-directory ASCII.
              # 2 SAVE XASCII LPT1     ; Send to parallel printer.
              # 3 SAVE XASCII COM2     ; Send to serial printer, use
              ; the DOS MODE command to set up the serial port first.

              # 0 SAVE XASCII FIX.ASC  ; If  you  get   your   drawing
              ; messed up you can save the elements as an XASCII  file
              ; from  the workspace and then load the XASCII file into
              ; the [W]rite command to save the good parts of the data
              ; out as blocks of text  to  DANCAD3D  (tm) XASCII  type
              ; files. Be sure to put ENTER on the  top line,  of  the
              ; new XASCII data files you are creating, and 0 0 0  0 0
              ; 0 0 0 0 0 on the last line  of  the  XASCII data files
              ; you are creating.  See also the ENTER command.

HINT:         Use  the  XASCII file  type to transfer data between the
              8087 and non-8087 versions of DANCAD3D (tm) v2.7I, v3.7J
              and  so  on,  If you want you write your own programs to
              manipulate or import data from DANCAD3D (tm) you can use
              the XASCII file type.  The XASCII files  have  generally
              been  tabulated  to  make  reading  and  writing to them
              easier,  but only one  space  is  required  between  the
              values  on  each  line  of data in the XASCII file.  See
              also the SAVE ASCII macro  command.  There  is  no  LOAD
              XASCII command since the LOAD  ASCII  command  can  load
              both ASCII and XASCII file types.  Some program versions
              may  support  LOAD  XASCII or LOAD X as a macro command,
              but LOAD ASCII should  be used in most cases.  See  file
              INFOV27I.TXT in SECTION: 3.3.7.9  for  more  information
              about the XASCII format.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SCREEN_FONT

PURPOSE:      SCREEN_FONT loads a *.808 or *.814 screen font file into
              the character  table  used  by  the  ECHO,  OUTPUT,  and
              OUTPUT$  commands  in  some  graphic  video modes.  This
              command was revised in v2.7G to work with the  VESA  15,
              16, 24, and 32 bpp video modes.

MAIN MENU:    [D] [?...] [C] [S]

KEYWORD:      SCREEN_FONT

PARAMETERS:   1

TYPE:         f......... filename of screen font, i.e. *.808 or *.814

FORMAT:       SCREEN_FONT f

EXAMPLE:      SCREEN_FONT FONTS\RUSSIAN2.814
              SCREEN_FONT FONTS\GREEK4.814

NOTE:         You can edit or create screen font files  by  using  the
              commands  in  the drawing editor's Calligraphy sub-menu.
              You can change the screen font and add more text to  the
              screen to have characters from more  than  one  language
              displayed  on  the  same screen at the same time.  It is
              best  to  reload   the   default   screen   font,   e.g.
              DANCAD3D.814,  after  displaying  text using a different
              font.

HINT:         See  also  ECHO,  OUTPUT,  OUTPUT$,  and LETTERING macro
              commands.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SELECT

PURPOSE:      SELECT,  selects lines by  color,  width,  and  possibly
              other modes if any are added in later versions.  Makes a
              new  element  with just the selected lines filtered into
              it.  Can be used to extract parts of a drawing that  was
              imported  if the conversion generated lines of different
              colors from the pen numbers,  or feed rates,  and  such.
              If  you  have  imported  an  element  you can use SELECT
              several times to extract all the  lines  of  each  color
              into  separate  elements in order to make editing easier
              by grouping like lines into individual elements.  If  no
              lines matching the select value are found no new element
              will  be made,  so have your macro check for a change in
              the number of elements before and after SELECT by  using
              the LET command.  New for v2.7A.

MAIN MENU:    [D] [?...] [L] [S]

KEYWORD:      SELECT

PARAMETERS:   2

TYPE:         w......... mode = C, line color select mode.
                                W, line width select mode.

              i......... value = in mode C, the color number 0 to 127.
                                 in mode W, the width number 0 to 255.

FORMAT:       SELECT w i

EXAMPLE:      # 1 SELECT C 15
              # 2 SELECT W 2

NOTE:         This command may or may not make a new element depending
              on  if  any lines meeting the value to select for are in
              the source element.  Be sure to use the select element #
              symbol to select the element for SELECT to select  lines
              from.  The  element selected to extract lines from,  can
              be 0 i.e. from all elements.

              The  "select"  element  macro  command  is  a  different
              command and uses the # symbol as its keyword,  so should
              not be confused with this SELECT lines command.

HINT:         See also  SPLIT,  MODIFY,  WINDOW,  and  LINETYPE  macro
              commands.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SELECT ELEMENT #

PURPOSE:      To select an element before a command is to act  on  the
              currently selected element.  Be very  careful  that  you
              always  use this command before the other macro commands
              that need an element to be selected before they are used
              to select the element to act  on,  otherwise  the  wrong
              element may get changed.  This command is written as the
              #  symbol,  the  macro  command  SELECT  is  a different
              command  that  filters  lines  out  of  an  element   by
              selecting  them.  See  also  the  macro  SELECT  command
              description.  In  the  documentation  when  the  "select
              element"  macro  command  is  mentioned what is meant is
              that you use the # symbol before one of the other  macro
              commands to select the element to act on.

MAIN MENU:    You are given a prompt when needed.

KEYWORD:      #

PARAMETERS:   1

TYPE:         i......... Number  of  element  to  select  for  action.
                         Range 1 to 999 individually,  or use 0 to act
                         on all elements in  the  workspace.  Elements
                         are  numbered according to the order of their
                         introduction to the workspace.  Commands like
                         JOIN  and  ERASE  can  change   the   numbers
                         assigned   to   the  other  elements  in  the
                         workspace,  so keep in mind what the  element
                         numbers  are  for  of  all your elements both
                         before and after each macro command.

FORMAT:       # i

EXAMPLE:      # 1 MAG Z 2 1 0.5   ; x=x*2:y=y:z=z*0.5 in element 1
                                  ; Remember to space between # & i.

              # 2 SAVE 3D ABC.2   ; Save element number 2 as a file
                                  ; so it can be loaded separately.

              # 0 ROTATE ZERO 0 0 90   ; Turn everything on its side.

              LET |MARK -> ELEMENTS    ; Mark highest element number.
              :L001
              # |MARK COPY             ; Select element at mark.
              LOOP :L001 5             ; Make 6 copies of the element.
              # [ |MARK + 6 ] OFFSET C 100 0 0  ; Offset copy # 6.
              # [ |MARK + 5 ] OFFSET C 110 0 0  ; Offset copy # 5.
              # [ |MARK + 4 ] OFFSET C 120 0 0  ; Offset copy # 4.
              # [ |MARK + 3 ] OFFSET C 130 0 0  ; Offset copy # 3.
              # [ |MARK + 2 ] OFFSET C 140 0 0  ; Offset copy # 2.
              # [ |MARK + 1 ] OFFSET C 150 0 0  ; Offset copy # 1.

HINT:         Be  careful  that you always leave a space between the #
              and the number for the element to select.  See  Appendix
              C for the syntax of the ELEMENTS "pointer", that is, how
              to find out how many elements there are currently in the
              workspace  so  that you can do stack type arithmetic and
              have your macro adjust  to  the  current  state  of  the
              workspace.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SIGNAL

PURPOSE:      To  generate an electronic signal to trigger the advance
              of a single frame movie,  or cine, camera, or some other
              external device such as a single frame VTR  or  VCR.  An
              electronic  signal is output from across your computer's
              loudspeaker terminals that can be amplified to trigger a
              relay that in turn can operate  the  camera  motor.  Use
              this  SIGNAL to command adjust exposure of the frames in
              a cine film recorder by  varying  the  duration  of  the
              shutter  open  frequency.  The  electronic signals might
              also be used to rotate the color separation filter wheel
              or flip in a cross-hair mesh screen for the effects pass
              with  another  control  frequency.  The  signal  command
              could  be  used  for  other  automation if you use a PLL
              (phase locked loop) to latch relays  in  set  and  clear
              mode, i.e.  send 400Hz to turn a thing on, then 800Hz to
              turn it off, then send 1600Hz to turn something else on,
              and 3200Hz to turn it off, and so on.  You can also just
              make the computer beep or play music if you convert  the
              tune into pitch and duration.

MAIN MENU:    NA

KEYWORD:      SIGNAL

PARAMETERS:   2

TYPE:         i......... Frequency, 19 to 32767 Hz.
              i......... Duration, 1 to 1E18 milliseconds.

FORMAT:       SIGNAL i i

EXAMPLE:      SIGNAL 20000 100    ; 20,000 Hz for 0.1 seconds.

              LET |EXPO = 10000            ; Initialize to 10 seconds.
              :FADE                        ; This loop does a fade.
              SIGNAL 1000 100              ; Advance camera one frame.
              GRAPH COLOR                  ; Use EGA 16 color mode.
              # 0 DISPLAY |XROT |YROT 0 -1000 |ZOOM 1 |XPAN |YPAN
              SIGNAL 2000 |EXPO            ; Open shutter.
              LET |EXPO = [ |EXPO - 1000 ] ; Next frame - 1 sec. expo.
              LOOP :FADE 10                ; 11 frame fade to black.

NOTE:         The  timing  of  the length of time the signal is on can
              vary  depending  on which version of the program you are
              using and how  fast  your  computer  is.  The  operating
              system you are using, or other programs you have loaded,
              may also effect the timing.  You should check the actual
              timing  on  the  computer  you  will  be  using and make
              adjustments to the values you give the SIGNAL command.

HINT:         See also the DELAY macro command  to  time  the  spacing
              between  the  signals  for  delayed  control   of   your
              mechanisms.  To  make  an  isolated  connection  to your
              computers loudspeaker use a 0.1  mf  600V  capacitor  in
              series  with  an 100K Ohm resistor on each terminal.  Do
              not ground the signal to the case of  the  computer  but
              you can use a two conductor with shield microphone cable
              and  ground  the  shield  to  the  center  tap  of  your
              transformer isolated input in the amplifier that  drives
              the  shutter  release  solenoid or camera advance motor.
              To avoid flutter in the exposure of the  cine  film  the
              duration  parameter of the SIGNAL command should control
              the exposure,  i.e.  signal "on" opens the  shutter  and
              signal  "off"  closes  the  shutter.  Sending two beeps,
              beep  open,  delay,   beep  close,   will  not  give  as
              consistent  exposure  because  of the harddisk seek time
              and other variables of program disk access.  Also do not
              press the keys on the computer keyboard or  pop  up  any
              programs  while  SIGNAL  is  working  because  you  will
              disturb the timing.  See information about the cine film
              recorder in Section 5.1.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SIMULATE

PURPOSE:      To make an element that can be  displayed  in  order  to
              view the shape that will be produced when a tool path is
              executed.  This  command may be helpful in checking tool
              path files before executing the tool path file in  a  NC
              or CNC machine tool in order to try to catch some of the
              more  obvious  mistakes  that  might  otherwise  not get
              noticed.  New to a revision of v2.7D.

MAIN MENU:    [D] [?...] [N] [S]

KEYWORD:      SIMULATE

PARAMETERS:   23

TYPE:         i.........  Mode = 1,  just one  mode  at  introduction,
                          check later documentation for others.

              f......... Toolname  =  *.ASC  tool  outline  file  from
                         SIMTOOLS\ sub-directory.

              r......... Feed_per_spindle_revolution = 1E-18 to  1E18,
                         try 0.01 to 0.002 for inch units,  or 0.25 to
                         0.05 for mm units.

              i......... Color_mode = -2,   make  same  color  as  the
                                      simulation tool file lines.

                                      -1,  make  same  color(s) as the
                                      tool path element lines.

                                       0 to 127,  make just  assigned
                                       color 0 to 127.

                                       1000 to 1127,  same as 0 to 127
                                       plus blinking tool animation.

                                       (Note  that  the  actual colors
                                       displayed may  be  effected  by
                                       the  current  palette settings,
                                       see the PALETTE command.)

              r......... Sim_tool_x_mag = 1E-18 to 1E18, change size of
                         tool.

              r......... Sim_tool_y_mag = 1E-18 to 1E18, change size of
                         tool.

              r......... Sim_tool_z_mag = 1E-18 to 1E18, change size of
                         tool.

              r......... Sim_tool_x_rot = -1E18 to  1E18,  rotate  the
                         angle of the tool.

              r......... Sim_tool_y_rot  =  -1E18 to 1E18,  rotate the
                         angle of the tool,  you may need to use the y
                         rotation  to  adjust  the  angle of the lathe
                         tool outline to the work-piece.

              r......... Sim_tool_z_rot = -1E18 to  1E18,  rotate  the
                         angle of the tool.

              r......... Sim_tool_x_off  =  -1E18 to 1E18,  offset the
                         tool relative to path.

              r......... Sim_tool_y_off = -1E18 to  1E18,  offset  the
                         tool relative to path.

              r......... Sim_tool_z_off  =  -1E18 to 1E18,  offset the
                         tool relative to path.

              r......... Sim_path_x_mag = 1E-18 to 1E18,  change  size
                         of path, i.e.  for lathe, you may need to use
                         0.5 or 2 to  adjust  for  the  lathe  cutting
                         twice as much on the x axis as the z.

              r......... Sim_path_y_mag  = 1E-18 to 1E18,  change size
                         of path.

              r......... Sim_path_z_mag = 1E-18 to 1E18,  change  size
                         of path.

              r......... Sim_path_x_rot = -1E18 to  1E18,  rotate  the
                         angle of the path.

              r......... Sim_path_y_rot  =  -1E18 to 1E18,  rotate the
                         angle of the path.

              r......... Sim_path_z_rot = -1E18 to  1E18,  rotate  the
                         angle of the path.

              r......... Sim_path_x_off  =  -1E18 to 1E18,  offset the
                         path relative to workspace.

              r......... Sim_path_y_off = -1E18 to  1E18,  offset  the
                         path relative to workspace.

              r......... Sim_path_z_off  =  -1E18 to 1E18,  offset the
                         path relative to workspace.

              l......... Mirror_mode = N, no mirror, e.g.  for milling
                                       simulations.

                                       X,  mirror  x  axis,  i.e.  for
                                       lathe simulations.

                                       Y, mirror y axis.

                                       Z, mirror z axis.

FORMAT:       SIMULATE i f r i r r r r r r r r r r r r r r r r r r l

EXAMPLE:      VERSION v2.7D
              ; Example of how to use SIMULATE.
              INIT
              PALETTE 2 KEEPTEMP.PAL  ; save palette colors
              LOAD ASCII WORKPIEC.ASC ; Triangle element of Work-piece.
              LOAD ASCII TOOLPATH.ASC ; see also LOAD GCODE here...

              # 2 SIMULATE 1 SIMTOOLS\VSFBEMFQ.ASC 0.005 1000
              0.375      0.375      1
              0          0          0
              0          0          0
              1          1          1
              0          0          0
              0          0          0
              N
              ; The values may need to be on more than one line.
              ; Do not put comments between the values.

              # 0 ROTATE Z 0 90 0
              # 0 ROTATE Z 0 0 90
              # 0 FLIP Z X

              WYSIWYG 1
              PALETTE 1 0 0  { set background to black }

              GRAPH_MODE COLOR

              # 1 DISPLAY 0 0 0 -1.000E+18 240 34 0 -0.5
              # 3 DISPLAY 0 0 0 -1.000E+18 240  1 0 -0.5
              # 4 DISPLAY 0 0 0 -1.000E+18 240  1 0 -0.5

              LOCATE 1 25 OUTPUT$ "Press [Return] to continue."
              WAIT

              PALETTE 3 KEEPTEMP.PAL { restore color palette }
              RELEASE KEEPTEMP.PAL { erase unneeded file }
              ; End SIMULATE example.

NOTE:         The example macro files  SIMLATHE.MAC  and  SIMVMILL.MAC
              can  be  run  in order to see an example of the SIMULATE
              command in operation if your computer  has  enough  free
              disk  space,  and those macros can in your distribution.
              The macro SIMTOOLS.MAC might be run to view some of  the
              shapes   of   the   tool   outlines  that  came  in  the
              distribution.  If the program generates an  error  while
              using  the  SIMULATE  command check that you have enough
              disk space free,  at least 2GB  free  on  the  workspace
              drive and the program drive are best.  Increase the feed
              per  spindle  rotation,  and reduce the line segments in
              the tool outline to reduce the number of  line  segments
              in  the  simulation  element.  For  the animation of the
              tool outline to run at  a  good  speed,  a  computer  of
              500MHz  or  better  should  be  used.  The  speed of the
              animation during the re-draw display can be adjusted  by
              changing  the  feed  per  spindle  rotation value in the
              SIMULATE command,  and by changing the  number  of  line
              segments in the tool outline file.

HINT:         You can break up the tool path into parts  and  generate
              simulation  elements  for  each  part  then  combine the
              simulations by using the Preview, DISPLAY,  JET ADD,  or
              DOT  ADD commands.  See the notes about this in the text
              derived from  INFOV27D.TXT.  See  also  the  WINDOW  and
              SPLIT  commands  to  isolate parts of the tool path file
              for simulation in order to get a  clearer  view  of  the
              portion  of  interest.   You  can  draw  your  own  tool
              outlines for the simulation, use the drawing editor from
              the appropriate view,  and save the tool outline  as  an
              *.ASC  file  into the SIMTOOLS\ sub-directory.  See also
              the LOAD GCODE command if you want to load and  SIMULATE
              tool path files from G code format, e.g.  similar to EIA
              RS-274-D, RS-244-A, RS-244-B (a.k.a.  274D,  274-D,  RS-
              274D, EIA-274-D, EIA-274D, 244A) and such.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SORT

PURPOSE:      New  command SORT triangles is for hidden line elements.
              This command sorts triangles  in  an  element,  back  to
              front.  Normally  the  sorting  is done automatically by
              the DISPLAY command,  but pre-sorting the triangles  may
              effect  the speed later if the elements do not move much
              for the display.  SORT may also have some uses with  the
              FILL_TRIANGLES  command  when  making  tool  path files.
              Revised in v2.7F.

MAIN MENU:    [D] [?...] [H] [S]

KEYWORD:      SORT

PARAMETERS:   1

TYPE:         i......... mode = 1, sort triangles back to front.
                                2, sort triangles front to back.

FORMAT:       SORT i

EXAMPLE:      # 1 SORT 1 ; sorts triangles back to front, i.e. far first
              # 1 SORT 2 ; sorts triangles front to back, i.e. near first

NOTE:         You do not normally need to use SORT for the hidden line
              display modes since they call the sorting  when  needed.
              This  command  may  have  some  uses if you are going to
              export data in STL format or make tool  path  files.  Be
              sure  to  use the select element # symbol before SORT to
              select the element in the drawing workspace to SORT.

HINT:         See also SAVE STL, FILL_TRIANGLES, and DISPLAY.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SPLIT

PURPOSE:      To divide an element that is in  the  drawing  workspace
              into two elements,  without changing the position of the
              line segments end points.

MAIN MENU:    [D] [?...] [J] [S]

KEYWORD:      SPLIT

PARAMETERS:   1

TYPE:         r......... line number to be last line of first part.

FORMAT:       SPLIT r

EXAMPLE:      # 1 SPLIT 4556892

NOTE:         If you use the macro  commands  such  as  ERASE,  PURGE,
              INSERT,  or DELETE on elements in the workspace, you can
              change the line number for the  line  segment  that  you
              have used with SPLIT, therefore be careful when you edit
              macros  that  make  direct references to line numbers in
              the workspace array.

HINT:         This  command  can  be  used  to break up a drawing that
              was saved as one  element,  split  any  element  in  the
              workspace,  or to split an element that was put together
              with JOIN.  To find the right line number use the [F]ind
              points command in the [L]ines sub-menu  of  the  drawing
              editor.  See  also  the  [J]ocky sub-menu of the drawing
              editor.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

STEREO

PURPOSE:      This macro command keyword STEREO has been introduced in
              v2.7H in order to pass the various values  required  for
              the  Stereoscopic image formatting information on to the
              DISPLAY macro command.  The STEREO  macro  command  must
              come  before the DISPLAY command for the DISPLAY command
              to make an image formatted in the assigned  stereoscopic
              image stereo format code.  The STEREO macro command must
              come before the DISPLAY macro command each time you want
              to display a stereoscopic image.

MAIN MENU:    [P]

KEYWORD:      STEREO

PARAMETERS:   14

TYPE:         i i i i i i i r r r r r r r

              Where:

              i = StereoMode, only 0 in initial revisions.
              i = FormatCode
              i = BorderColor
              i = Reverse
              i = SyncAdjust
              i = SyncTweak
              i = AspectComp
              r = RightMask
              r = LeftMask
              r = StereoGamma
              r = Zshift
              r = SXshift
              r = EyeRot
              r = EyeOff

FORMAT:       STEREO 0 i i i i i i r r r r r r r

Macro command parameter usage order for STEREO:

STEREO StereoMode FormatCode BorderColor Reverse
       SyncAdjust SyncTweak AspectComp
       RightMask LeftMask StereoGamma
       Zshift SXshift EyeRot EyeOff

Where:

StereoMode   = stereomode is always 0 in initial revision of v2.7H
FormatCode   = see formatcode list below
BorderColor  = 0-15=colors 16=none, see color code list below
Reverse      = 0=none 1=reverse right and left eye views
SyncAdjust   = only for sync double shutter glasses, 0 or about 20 to 60
SyncTweak    = only for sync double shutter glasses, 0 or about -3 to +3
AspectComp   = for FormatCodes 20, 40, 120, and 121, see AspectComp info.
RightMask    = for various glasses, 0 otherwise, 0 to about 0.35
LeftMask     = for various glasses, 0 otherwise, 0 to about 0.35
StereoGamma  = image adjustment, 1.0 or about 0.5 to 2.0
Zshift       = 0 or + moves image to you, - moves it away, about -50 to +100
SXshift      = 0 or + moves image to you, - moves it away, about -0.8 to +2
EyeRot       = eye rotation, about 0.2 to 0.4
EyeOff       = eye offset, about 0.1 to 0.2

EXAMPLE:      An Example of how the STEREO macro command might be used
              for on screen display:


VERSION v2.7H

; INFO27H3.MAC demo of "Sync Double" for Shutter Glasses.

INIT

ENTER
-1.0E+00 -1.0E+00 1.00E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15479E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 1.00E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 1.00E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
0 0 0  0 0 0  0 0 0 0  { END ENTER }

# 1 CENTER 0 0 0
# 1 MAGNIFY Z 0.50 0.25 0.25
# 1 OFFSET Z 2 -4.5 0
# 1 SAVE ASCII V27HTELE.ASC

INIT

LET |OFF = 0
LET |ROT = 0

:LABEL_A1

LOAD ASCII V27HTELE.ASC
LET |N -> ELEMENTS
# |N OFFSET C 0 |OFF 0
# |N ROTATE Z 0 |ROT 0

LET |OFF = [ |OFF + 0.25 ]
LET |ROT = [ |ROT + 51.42857143 ]

LOOP :LABEL_A1 44

LET LS1XDEG_.VAR = 0   { for DISPLAY }
LET LS1YDEG_.VAR = -90 { for DISPLAY }
LET LS1ZDEG_.VAR = -45 { for DISPLAY }
LET LS0LAMB_.VAR = 1   { for DISPLAY }
LET LS0REFL_.VAR = 1   { for DISPLAY }
LET LS1BRIG_.VAR = 1   { for DISPLAY }
LET LS1REFL_.VAR = 1   { for DISPLAY }

LET  B24OVER_.VAR = 4   { for VESA24 mode }
LET  B24UNDER.VAR = 1   { for VESA24 mode }
LET  B24XPIX_.VAR = 800 { for VESA24 mode }
LET  B24YPIX_.VAR = 600 { for VESA24 mode }
LET  B24DITHE.VAR = 4   { for VESA24 mode }
LET$ B24BACK_.VAR = ""  { for VESA24 mode }
LET$ B24NAME_.VAR = ""  { for VESA24 mode }

PALETTE 1 0 4 { Set background color }

GRAPH_MODE SEEK 0 800 600 24
STEREO 0 121 6 0 25 0 2 0.20 0.20 1.0 0 0 0.4 0.2  { 121="Sync Double" }
# 0 DISPLAY -75 0 0 10 240 64 0 0

SAVE PIXEL INFO27H3.PIX

WAIT

STOP

; EOF


The  STEREO  command must come before the DISPLAY command each time you want to
generate a stereoscopic image.  In the initial release of v2.7H only  the  VESA
15,  16,  24, and 32 bpp video modes can be used to display stereoscopic images
on the computer's screen.  If your video board  does  not  display  these  VESA
modes you can only output the stereoscopic image to a BMP file by using the BMP
graphics video mode.

An Example of how the STEREO macro command might be used to make BMP file:


VERSION v2.7H

; INFO27H4.MAC demo of "Interlace" and BMP modes for Shutter glasses.

INIT

ENTER
-1.0E+00 -1.0E+00 1.00E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15479E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 0.00E+00 1.00E+00   0.00000E+00 0.00000E+00 2.15470E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 0.00E+00 -1.0E+00   0.00000E+00 0.00000E+00 -2.1547E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
1.00E+00 0.00E+00 0.00E+00   2.15470E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 1.00E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
-1.0E+00 0.00E+00 0.00E+00   -2.1547E+00 0.00000E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 -1.0E+00   1.00000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 -1.0E+00   1.00000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 -1.0E+00 1.00E+00   -1.0000E+00 -1.0000E+00 1.00000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
-1.0E+00 -1.0E+00 1.00E+00   -1.0000E+00 -1.0000E+00 -1.0000E+00 1 1 160 0
0.00E+00 -1.0E+00 0.00E+00   0.00000E+00 -2.1547E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 -1.0E+00   -1.0000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 -1.0E+00   -1.0000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
-1.0E+00 1.00E+00 1.00E+00   1.00000E+00 1.00000E+00 1.00000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
1.00E+00 1.00E+00 1.00E+00   1.00000E+00 1.00000E+00 -1.0000E+00 1 1 160 0
0.00E+00 1.00E+00 0.00E+00   0.00000E+00 2.15470E+00 0.00000E+00 1 1 192 0
0 0 0  0 0 0  0 0 0 0  { END ENTER }

# 1 CENTER 0 0 0
# 1 MAGNIFY Z 0.50 0.25 0.25
# 1 OFFSET Z 2 -4.5 0
# 1 SAVE ASCII V27HTELE.ASC

INIT

LET |OFF = 0
LET |ROT = 0

:LABEL_A1

LOAD ASCII V27HTELE.ASC
LET |N -> ELEMENTS
# |N OFFSET C 0 |OFF 0
# |N ROTATE Z 0 |ROT 0

LET |OFF = [ |OFF + 0.25 ]
LET |ROT = [ |ROT + 51.42857143 ]

LOOP :LABEL_A1 44

LET LS1XDEG_.VAR = 0   { for DISPLAY }
LET LS1YDEG_.VAR = -90 { for DISPLAY }
LET LS1ZDEG_.VAR = -45 { for DISPLAY }
LET LS0LAMB_.VAR = 1   { for DISPLAY }
LET LS0REFL_.VAR = 1   { for DISPLAY }
LET LS1BRIG_.VAR = 1   { for DISPLAY }
LET LS1REFL_.VAR = 1   { for DISPLAY }

LET  B24OVER_.VAR = 4    { for BMP mode, sub-pixel oversample }
LET  B24UNDER.VAR = 1    { for BMP mode }
LET  B24XPIX_.VAR = 1280 { for BMP mode, image width in pixels }
LET  B24YPIX_.VAR = 1024 { for BMP mode, image height in pixels }
LET  B24DITHE.VAR = 4    { for BMP mode, 24 bpp dithering }
LET$ B24BACK_.VAR = ""   { for BMP mode, no background file used here }
LET$ B24NAME_.VAR = "INFO27H4.BMP"  { for BMP mode, name of file to make }

PALETTE 1 0 4 { Set background color }

GRAPH_MODE BMP  { to make a BMP file rather than displaying on the screen }
STEREO 0 160 16 0 0 0 0 0.18 0.18 1.0 0 0 0.4 0.2
# 0 DISPLAY -75 0 0 10 240 64 0 0

STOP

; EOF


NOTE:         What follows is  a  more  detailed  explanation  of  the
              STEREO command parameters.

SrereoMode:

There is just "stereo mode" 0 in the initial revision of v2.7H, so you
just enter 0 after STEREO for now.

FormatCode:

The  "FormatCode"  value is for selecting how the making of the stereo
3D image or file will be done.  Each format code might be used to make
a stereoscopic image that could be viewed somewhat differently or with
different apparatus.

The location of the Right eye view  and  the  Left  eye  view  in  the
stereoscopic  combination  image might be switched or swapped if there
is a need to do so,  use the "Reverse" option value to swap the  Right
and  Left  views.  LCS  shutter  glasses  may  have  a button on their
control driver electronics that also lets you swap the Left and  Right
views when you need to,  without having to regenerate the stereoscopic
image.

For exporting the stereoscopic image pick  BMP  video  mode  with  the
GRAPH_MODE  command,  rather  than  saving  the image displayed on the
screen,  since the shading will be better when the 15 or 16  bpp  VESA
modes  are  used.  Using  the  BMP  video  mode also lets you save the
stereoscopic image larger and with finer detail  for  later  printing.
When  using  a  computer  that has a video board that does not display
fancy VESA video modes you might be able to use the BMP video mode  to
save  the stereoscopic image to disk without having to use a different
video board.

"Padding" is black fill around  the  stereo  images  so  the  combined
stereo BMP image file can be converted to a Pixel file, i.e. the image
size  is  padded  to  be  like a video screen shape.  In order for the
padding to do its job the size of the source images must  be  selected
to  convert  to the desired standard result size.  "Padding" is needed
for some FormatCodes that put the Left  and  Right  images  above  and
below  or  side by side when the stereoscopic image is to be displayed
on screen.  When using the main menu  Preview  command  or  the  macro
DISPLAY command to display on screen the image is automatically padded
regardless  of  the FormatCode selected,  but when using the BMP video
mode the image is saved un-padded when the appropriate  FormatCode  is
selected.  Also when displaying side by side or above and below images
on  the  screen  the resolution is divided by two and adjusted so that
the program does not need to switch into a resolution that is twice as
high, which might not be possible or safe for your monitor,  i.e.  the
on-screen  image  is displayed in the VESA mode selected regardless of
the FormatCode entered.  When the image is saved using the  BMP  video
mode  the  image will be double resolution when needed for some of the
side-by-side or above and below, a.k.a. over-under, images.  If you do
not want the BMP file at double resolution for some of the  above  and
below  or  side-by-side images enter X and Y pixel dimensions half the
composite image size.  When making BMP files for later  conversion  to
Pixel  files  for  display  through  LOAD  PIXEL or ANIMATE be sure to
select the "Padding" adjusted FormatCodes and  enter  X  and  Y  pixel
values  that  will  make  the  BMP file the right size for conversion.
Some  video  modes  do  not  come  out  even  for  the  double   image
FormatCodes,  such  as  putting  two  640x480  views  on  one standard
1280x1024 image.  To make up for the odd screen sizes the  program  in
some  cases  makes  adjustments  to  the  size of the "padding" in the
FormatCodes  that  are  selected  to  give  extra  adjustment  of  the
"padding".

If  you  want  to make transparency slides for projection in two slide
projectors you can  select  FormatCode  =  1  and  2,  or  rename  the
temporary  image  files DANR0000.BMP and DANL0000.BMP,  then shoot the
right and left eye views from the  computer's  full  screen.  You  can
convert  BMP  eye image files to Pixel files using the Files Utilities
BMP Pixel command and then use Load Pixel to display the  Pixel  files
for  photography.  The CRT Negative command might be used to alter the
display on the screen to get reversed tones for photography onto Color
Positive film stock,  such as Agfa CP-30 (tm) using yellow  or  orange
filters,  to  give  a  color positive slide or movie from the negative
screen image.  The same idea might be used to make two strip 3D  movie
prints  for  projection  with  two  movie  projectors interlocked with
synchro motors,  which may give better results than making a  side-by-
side  squeezed  print.  It  may  be  better to use video mode BMP when
saving separate eye view files by  use  of  the  temporary  eye  image
files,  since  the  VESA modes reduce the separate image sizes to half
size, when you are using some FormatCodes, in order to get both images
on the screen in the selected mode,  but when the BMP  graphics  video
mode  is selected the images are output full size and so may have four
times as many pixels.


FormatCode = 0

Monoscopic mode.  Use a FormatCode of 0 when you do not want to make a
Stereoscopic view,  but do not what to remove the STEREO command  from
the  macro.  That  is  FormatCode  0  disables  the Stereoscopic image
generation.


FormatCode = 1

Right eye single eye view image.  FormatCode 1 outputs just the  right
eye  view  from  the  stereo  pair.  You might want each of the stereo
views output to separate images so that you can do further  processing
of  the images,  or so that you can make a separate slide or cine film
of each of the two views for  projection  from  two  projectors  or  a
special   double  image  projector.   Unlike  just  copying  the  file
DANR0000.BMP,  FormatCode 1 generates an image that can that be  ghost
masked.  Both  the RightMask and LeftMask values should be set as they
would be when making a combined stereoscopic image.  FormatCode 1  was
added after the November 27, 2003 release.


FormatCode = 2

Left  eye  single  eye view image.  FormatCode 2 outputs just the left
eye view from the stereo pair.  You might  want  each  of  the  stereo
views  output to separate images so that you can do further processing
of the images,  or so that you can make a separate slide or cine  film
of  each  of  the  two  views  for projection from two projectors or a
special  double  image  projector.   Unlike  just  copying  the   file
DANL0000.BMP,  FormatCode  2 generates an image that can that be ghost
masked.  Both the RightMask and LeftMask values should be set as  they
would  be when making a combined stereoscopic image.  FormatCode 2 was
added after the November 27, 2003 release.


FormatCode = 10

"Parallel",  a.k.a.  "wall eyes",  side-by-side format,  the Left  eye
image  is  on the Left side of the image and the Right eye image is on
the Right side of the image (unless you have used  "reverse"  to  swap
them).  This  format  is  used  with  some kinds of stereoscopic image
viewers that have prisms or mirrors in them  that  let  you  view  the
centers  of  the  two images without diverging your eyes.  Some people
can "free view" the "Parallel" format if viewed from a distance or the
images are printed so that their centers are equal to or a little less
than the distance between your eye's pupils, about 50mm to 80mm.  Some
people might find the "Crossed eyes"  format  easier  to  "free  view"
since  the  image  spacing  may  be  less critical.  If the "Parallel"
images are printed on small cards so that their centers are  spaced  a
little less than the inter-pupil distance,  you can view the images by
using two, preferably achromatic, magnifying glasses of about positive
75mm to 150mm focal length,  one cemented lens in front  of  each  eye
like  eye  glasses.  Holding  a  black card between the images so that
each eye can see only one image may help when viewing.  The "Parallel"
images might be viewed off of the computer  screen  by  using  special
"periscope"  viewers  using  four  front  surface mirrors or 90 degree
prisms.  The "periscope" type viewer might have an adjustment to allow
the images to be converged,  e.g.  one or more of  the  mirrors  might
pivot  or  slide to try to correct for different viewing distances and
different distances between the  right  and  left  image  centers.  It
might  be  possible  to  use just one periscope over just the right or
left eye,  but it may be generally better to  keep  the  optical  path
length  the  same  for  both  eyes so that both eyes focus at the same
distance.  Wedge prism type 3D  viewers  for  "Parallel"  side-by-side
views may also allow viewing images that have a center spacing greater
than  the  spacing  between  the eyes.  Two thin wedge prisms might be
arranged like lenses mounted in eye glasses so that you  look  through
the prisms and your line of sight is made to diverge without your eyes
having  to  diverge.  Achromatic wedge prisms might be desirable since
wedge prisms made of a single kind of glass may show  some  degree  of
chromatic  aberration,   i.e.   rainbow  fringes.   Using  the  STEREO
command's "BorderColor" option may help in lining up the two  side-by-
side  stereo images while viewing.  Using the monitor's horizontal and
vertical size adjustments may help  somewhat  to  achieve  fusing  and
convergence  by  letting you change the distance between the right and
left image centers.  See also FromatCode 20 which  might  be  adjusted
with  the  AspectComp  to  give a tall aperture full screen image with
some image center distance compensations.  When the VESA  video  modes
display  on  the  screen the images is padded,  but when the BMP video
mode is selected the image is not padded unless you  select  a  padded
FormatCode.


FormatCode = 11

This  is  also  a  "Parallel"  image but simple black padding has been
added equal to twice the  image  height.  This  might  be  needed  for
conversion  to  some  odd  video modes such as 1280x960 or 640x400 and
such.  See also FormatCode 12 for adjustment  for  some  uneven  pixel
ratios.


FormatCode = 12

This  is like FormatCode 11 but the padding has been adjusted for some
video modes like 2x-640x480 going to 1280x1024 or 2x-320x200 going  to
640x480.  You  might try to report what other odd VESA modes you think
should be adjusted on the "Wish List" form.  When the image is  to  be
displayed  on-screen  the  adjusted padded FormatCode would usually be
the preferred FormatCode.


FormatCode = 20

This is a "Parallel" image format with the two  images  in  anamorphic
squeeze  across  their  width  for  recording on 3D cine film when the
AspectComp is set to 0.  Special lenses or mirrors  are  used  on  the
movie  projector  to  unsqueeze  and superimpose the two images on the
movie screen.  Polarizing filters are normally used for each  side  of
the  projector  lens  so  the  viewers  can  see color images by using
Polarized 3D glasses.  Pure Red and Cyan filters  plus  Didymium  type
rare  earth  glass  filters might also be used on the projector with a
stereo unsqueeze lens,  in place of the usual polarizers,  to possibly
get  better  ghosting results when viewing with Red-Cyan cardboard gel
glasses than when making an Anaglyph color release  print,  since  the
dyes  and  minerals in the filters over the movie projector might have
better pass and stop bands than the dyes obtainable by  printing  onto
color  print stock,  e.g.  a black and white print could be used since
filters are on the projector lens.  If your monitor has  enough  range
on  its  vertical  size  or  height adjustment to reduce the on screen
image  height  to  50%  you  might  use  FormatCode  20  in  place  of
FormatCodes 10,  11,  and 12 to try to get higher vertical resolution.
If your monitor can not shrink the on screen image enough,  you may be
able  to  reduce  the  distortion  by  using the AspectComp adjustment
value.  Within FormatCode 20 the  AspectComp  value  can  select  sub-
formats,  when it is 1 the image is un-squeezed such that it is a tall
aperture of the usual screen image with the sides cut off,  when it is
2  the image contains a smaller version of the usual screen image plus
extra on the top and bottom within the taller aperture.  If  you  what
to  adjust  the  monitor  raster size in an asymmetric way in order to
adjust the center distance of the two images to try to correct for the
limitations of some viewing aid, the AspectComp values 100 to 120 work
like 1 except the aspect compensation is  adjustable  in  grades  from
mode 0 to 1 and past 1,  and values 200 to 220 work like 2 except that
the aspect compensation is adjustable in grades from 0 to 2  and  some
extra  beyond  that.  To  view the "tall screen" side-by-side parallel
images off of the computer screen you might try to use  some  kind  of
prism or periscope viewer.


FormatCode = 30

"Crossed  eyes"  side-by-side  format  puts the Right eye image on the
Left side and the Left eye image on the  Right  side.  "Crossed  eyes"
stereo  format  is  the  format  preferred  by  some  people for "free
viewing",  "free viewing" means viewing without any special glasses or
viewers.  To  "free  view" the "Crossed eyes" image sit back about two
to three feet from your monitor then hold your finger about  half  way
between  your monitor and your nose.  Look at your finger tip and move
your finger closer or further from your nose until you see  three  out
of  focus images side by side.  Ignore the two images on the sides and
concentrate on the center image.  Do  not  try  to  focus  the  center
image,  focus  on your finger.  Slowly lower your finger while keeping
your eyes lined up on the center image.  When your finger  is  out  of
the way,  just sit there and look at the out of focus center image for
a few minutes,  being careful not to let your eyes shift position  and
look  at  one  of  the  side  images.  After  you gain good control at
holding the out of focus center image in place you can try  little  by
little  to bring it into focus while struggling to keep your eyes from
moving off of the center image.  It is natural for your eyes to  focus
at  the  point that the eyes converge,  but to "free view" you need to
train yourself to separate your control of the muscles  on  your  eyes
that  focus and converge your eyes.  This is somewhat like learning to
ride and balance a bicycle,  once you  learn  how  to  gain  conscious
control  of  these various eye muscles it becomes a new skill that you
might be able to keep and use for the rest of your life.  Do not  give
up  if your first few tries fail,  once you learn this skill you might
be able to "free view" off of your monitor or from a print out of  the
stereoscopic image anytime and anywhere even when you do not have your
special  glasses  or  viewers with you.  Using the image "BorderColor"
option may be a help in "free viewing" since it gives the three images
you see an outline by which you can try to register them.  Another aid
you might try for "free viewing" is to cut a hole the shape of one  of
the  on  screen  images,  a little smaller than the image,  in a black
piece of cardboard.  Place the black piece of cardboard midway between
the monitor's screen and your eyes,  such that when you  look  at  the
screen  through  the  hole  you  see the image on the left side of the
screen with only your right eye,  and you see only the  image  on  the
right  side  of  the  screen with your left eye.  You may need to make
several black cards with the rectangular hole until you make one  that
has  the  hole  just large enough to see only one image when your eyes
are crossed.  You could make  a  hinged  bracket  to  flip  the  black
cardboard mask down in front of your monitor and hold it out the right
distance on a stick of some kind, that way both of your hands could be
free,  and  you  just need to move your head to the right spot to view
the 3D stereoscopic image through the rectangular hole  in  the  mask.
The  filetype  JPS  is a variation of the popular JPG filetype that is
used on the internet to display stereoscopic images.  To  make  a  JPS
file  save the stereoscopic image as a "Crossed eyes" BMP image,  then
use the software that came with your scanner to convert the BMP  image
into a JPG type file, using the minimum compression option in order to
preserve  the  stereo  detail  and  reduce "cardboarding" of the image
planes.  Next,  rename the JPG file to have the  JPS  file  extension.
Renaming  should  work  since  if the JPS file lacks the special image
header encoding the image reader should assume the JPS file is  a  JPG
file  that  has  the  image  formatted for "Crossed eyes" stereoscopic
image format.  Since the JPS file  will  not  have  the  usual  stereo
header  encoding  some  viewers  may  not display the renamed JPG file
properly.  It may be possible to add the correct  header  encoding  to
the  JPS  file with a third party program,  but you would need to find
such software.  See also FromatCode 40 which can be adjusted with  the
AspectComp  to  give  a "crossed eyes" tall aperture full screen image
with image center distance compensations.

Some related viewing aids  for  viewing  "Crossed  eyes"  side-by-side
stereo  images  might  be  of interest to viewers that have difficulty
"free viewing" "Crossed eyes" stereo images.  When you are using a CRT
monitor you can cut some polarizer sheets so that you have two  sheets
half  the  width of the screen and the full height of the screen,  one
sheet has the polarization angle set to 45 degrees and the other sheet
has the polarization angle set to 135 degrees.  You then  put  45  and
135  degree  Polarized glasses on and cover your left eye,  then place
the Polarizer sheet that looks gray over the left half of the  screen,
and  the  Polarizer  sheet that looks black over the right side of the
screen.  When you switch and cover the right eye you  should  see  the
right  side of the screen through a gray filter,  and the left side of
the screen through a black filter.  You then display a "Crossed  eyes"
image on the screen by using stereo format code 30 or 40.  If you move
back  some  distance from the monitor and view the side-by-side images
through the two filters over the screen and are wearing the  Polarized
3D  glasses  you  should  be  able to cross your eyes and see just one
stereoscopic image,  rather than the usual three  images  side-by-side
that  you would see when "free viewing" without using the Polarized 3D
glasses.

If you are making transparency slides for  projection,  you  might  be
able  to  use  glass  mounts  and  bind  strips of Polarizer material,
aligned to 45 and 135 degrees, half the width of the image on the lens
side of a "Crossed eyes" color transparency.  When  such  a  slide  is
projected  and  the  viewers  are  viewing  through  45 and 135 degree
Polarized glasses they should be able to  fuse  the  two  side-by-side
images  a little easier than if the "Crossed eyes" image was projected
without the Polarized filter since they will just see one image rather
than three,  particularly if the room is very dark and  the  image  is
small  and  distant.  A  special type of screen to project on might be
needed to make the side images dim,  but ghosting  should  not  be  an
issue  since this is a "Crossed eyes" stereo format and the images are
never  superimposed,  except  in  the  viewers  mind.  Heat  from  the
projector  lamp might be a problem with melting and destruction of the
bound transparency and Polarizer filter strips,  so you might want  to
use a dichroic heat mirror for the mounting glass closest to the light
source.

Since  LCD  monitors and screens used in laptop computers already have
polarizers in them you can not tape two large  Polarizer  strips  over
them,  since  one side of the screen would come out black.  Dr.  Keigo
Lizuka has suggested that in this situation you can leave one side  of
the  LCD  screen  uncovered  and  put  a  sheet  of  about 1 mil clear
cellophane over the other half of the screen.  The cellophane  rotates
the  polarized  light  so  that you now have light coming from the two
sides of the screen at angles that are similar to using two  Polarizer
filters  on  a  CRT  monitor.  You need to use cellophane of the right
thickness for this to work, using a different thickness or a different
kind of plastic will probably not give the same results.  If your  LCD
screen  has  an angle of 45 or 135 degrees then you may be able to use
Polarized glasses set  to  45  and  135  degrees  to  view  using  the
cellophane  technique,  otherwise  you might need to make Polarized 3D
glasses that have the filters rotated to the same angles that you  are
getting  from  the  uncovered and cellophane covered sides of your LCD
screen.  This cellophane gimmick may not work with all LCD displays.

This "split  screen  filtering"  idea  could  be  used  with  circular
Polarizer glasses and sheets on the monitor or slide, and such.

This  same  idea might be used with colored filters over the two sides
of the computer monitor,  or  slide  transparency,  and  viewing  with
Anaglyph glasses.  For instance if you display a side-by-side "Crossed
eyes"  image on the computer screen,  then cover the right side of the
monitor screen with a red theatrical gel or  dyed  plastic  sheet  and
cover  the  left  side  of  the monitor screen with a cyan gel or dyed
plastic sheet,  and view by using Red-Cyan Anaglyph glasses  with  the
red  filter  on  the left eye,  you might then see a ghost free stereo
image by crossing your eyes.  The  color  filters  in  this  technique
might  not  need  to be perfect since filter leakage may just make dim
side images rather than ghosts within the central  stereo  image.  Any
of  the  other  Anaglyph  color combinations might operate in the same
way.  Moving back a distance from the monitor or screen and viewing in
a darkened room might help with the ability to fuse the stereo image.

I have not yet tested all of  the  various  display  viewing  options,
methods,  and  techniques  described  so  you  may  need  to  do  some
experimenting to see what you might find of utility.


FormatCode = 31

This is "Crossed eyes" format plus simple black padding for conversion
of the image for on-screen display.  For some  odd  video  modes  this
FormatCode  might  be  needed,  but for standard video modes it may be
better to use FormatCode 32.


FormatCode = 32

This is "Crossed eyes" format with padding plus  adjustment  for  some
video  modes  that do not have double the image height of the original
images.  FormatCode 32 would be the preferred FormatCode for on-screen
display of "Crossed eyes" stereoscopic image format, generally.


FormatCode = 40

When AspectComp is 0 this is a non-standard "Crossed eyes"  anamorphic
format  that  might  be useful if your monitor have size controls with
enough range to make the images un-squeezed, thereby getting twice the
vertical resolution since black padding would not  be  needed  in  the
combined  stereoscopic  image.  See  if  you  can reduce the "vertical
size" or "height" on your monitor to 50% and increase the  "horizontal
size"  or  "width"  on your monitor to 100%.  If you cannot get enough
range on your monitor to get the correct 4:3 image  shape,  you  might
use the AspectComp adjustment to distort the image in order to make up
for the extra height of the image frames.  FormatCode 40 could be used
in  place  of  FormatCode  20 for 3D motion pictures if the polarizing
filters where swapped for the two projected images.  Within FormatCode
40 the AspectComp value can select sub-formats, when it is 1 the image
is un-squeezed such that it is a tall aperture  of  the  usual  screen
image with the sides cut off,  when it is 2 the image contains a small
version of the usual screen image plus extra on  the  top  and  bottom
within  the taller aperture.  If you want to adjust the monitor raster
size in an asymmetric way in order to adjust the  center  distance  of
the  two  images to try to correct for the limitations of some viewing
aid,  the AspectComp values 100 to 120 work like 1 except  the  aspect
compensation is adjustable in grades from mode 0 to 1 and past 1,  and
values 200 to 220 work like 2 except that the aspect  compensation  is
adjustable  in grades from 0 to 2 and some extra beyond that.  To view
the "tall screen" "Crossed eyes" images you can try to "free view"  by
crossing  your eyes,  so no viewer would be required by people who are
able to easily "free view" such "Crossed eyes" images.


FormatCode = 80

The side-by-side "Mirror Right" stereoscopic format has the  Left  eye
view on the left side,  and the Right eye view on the right side, like
the "Parallel" format,  but has the Right eye view flipped or mirrored
side  to  side  so  that  the  Right eye view will appear correct when
viewed in a mirror.  To view this format you  place  a  front  surface
mirror  perpendicular  to the monitor screen with the mirrored surface
facing right and you look directly at the left image  with  your  left
eye  and  you  look  at  the  reflection of the right eye image in the
mirror.  You can tip the mirror a little from side to side at the  end
closest  to your face in order to bring the centers of the images into
convergence.  If you use this  format  frequently  you  might  make  a
hinged  bracket  that  fits  to  the top of your monitor and hangs the
mirror in the proper position,  so that the mirror can be flipped  out
of  the way when not needed.  You might also add two positive meniscus
diopter lenses,  i.e.  eyepieces to look through,  of a  focal  length
slightly  longer  than  their  distance to the monitor so that you can
view the images on the monitor without straining your  eyes  to  focus
close  up.  Viewing with one eye's view reflected in a mirror might be
easier for people who cannot master  "free  viewing"  by  the  use  of
"Crossed  eyes" format.  Having a border on the images may make lining
up the two images easier,  see also the BorderColor option value.  The
program  uses  the related padded FormatCodes when rendering the image
for on screen display when the VESA graphics video modes are selected,
so use the graphics mode BMP and output the stereoscopic  image  to  a
disk file if you do not want it padded.


FormatCode = 81

This is "Mirror Right" format with black padding, this might be needed
for  some  odd  screen  image dimensions,  but the adjusted padding in
FormatCode  82  is  probably  of  more  frequent   use.   The   padded
FormatCodes  are  for  use with images that will be converted to Pixel
files for on-screen display,  if you are making images for display  on
the internet you do not need the padding, generally.


FormatCode = 82

This  is  "Mirror Right" format with black padding plus adjustment for
some standard screen image dimensions that  do  not  have  the  height
twice  the  sub-image  size,  this might be needed for some odd screen
image  dimensions.   In  some  cases  the  non-adjusted   padding   in
FormatCode  81  may be required for odd screen dimensions.  The padded
FormatCodes are for use with images that will be  converted  to  Pixel
files  for on-screen display,  if you are making images for display on
the internet you do not need the padding, generally.  The program uses
the related padded FormatCodes when rendering the image for on  screen
display  when  the VESA graphics video modes are selected,  so use the
graphics mode BMP and output the stereoscopic image to a disk file  if
you do not want it padded.


FormatCode = 90

The  side-by-side  "Mirror Left" stereoscopic format has the Right eye
view on the Right side,  and the Left eye view on the Left side,  like
the  "Parallel" format,  but has the Left eye view flipped or mirrored
side to side so that the Left eye view will appear correct when viewed
in a mirror.  To view this format you place  a  front  surface  mirror
perpendicular  to  the monitor screen with the mirrored surface facing
left and you look at the right image directly with your right eye  and
you  look  at the reflection of the left eye image in the mirror.  You
can tip the mirror a little from side to side at the  end  closest  to
your   face  in  order  to  bring  the  centers  of  the  images  into
convergence.  If you use this  format  frequently  you  might  make  a
hinged  bracket  that  fits  to  the top of your monitor and hangs the
mirror in the proper position,  so that the mirror can be flipped  out
of  the way when not needed.  You might also add two positive meniscus
diopter lenses,  i.e.  eyepieces to look through,  of a  focal  length
slightly  longer  than  their  distance to the monitor so that you can
view the images on the monitor without straining your  eyes  to  focus
close  up.  Viewing with one eye's view reflected in a mirror might be
easier for people who cannot master  "free  viewing"  by  the  use  of
"Crossed  eyes" format.  Having a border on the images may make lining
up the two images easier,  see also  the  BorderColor  parameter.  The
program  uses  the related padded FormatCodes when rendering the image
for on screen display when the VESA graphics video modes are selected,
so use the graphics mode BMP and output the stereoscopic  image  to  a
disk file if you do not want it padded.


FormatCode = 91

This is "Mirror Left" format with black padding,  this might be needed
for some odd screen image dimensions,  but  the  adjusted  padding  in
FormatCode   92   is  probably  of  more  frequent  use.   The  padded
FormatCodes are for use with images that will be  converted  to  Pixel
files  for on-screen display,  if you are making images for display on
the internet you do not need the padding, generally.


FormatCode = 92

This is "Mirror Left" format with black padding  plus  adjustment  for
some  standard  screen  image  dimensions  that do not have the height
twice the sub-image size,  this might be needed for  some  odd  screen
image   dimensions.   In   some  cases  the  non-adjusted  padding  in
FormatCode 91 may be required for odd screen  dimensions.  The  padded
FormatCodes  are  for  use with images that will be converted to Pixel
files for on-screen display,  if you are making images for display  on
the internet you do not need the padding, generally.  The program uses
the  related padded FormatCodes when rendering the image for on screen
display when the VESA graphics video modes are selected,  so  use  the
graphics  mode BMP and output the stereoscopic image to a disk file if
you do not want it padded.


FormatCode = 100

The "Over-Under" or "Above-Below" stereoscopic image format,  with the
right  image  on  top,  is used with special prism or periscope mirror
viewers that let you look at the  center  of  the  monitor  screen  or
printout  and  see one stereoscopic image.  If the left image needs to
be on top you can use the "Reverse" option value to  swap  the  stereo
images.  Some  kinds  of prism viewer might have two weak wedge prisms
that divert your line of sight so that  the  right  eye  sees  objects
above  the  line of sight and the left eye sees objects below the line
of sight.  The power of the wedge prisms may effect how far away  from
the  monitor you need to be and that the centers distance of images be
a certain value.  With a large monitor you may not be able to converge
or fuse the stereo images if the viewer's wedge prisms are too  strong
or  weak.  You may be able to find some kind of wedge prism viewer for
"Over-Under" viewing,  perhaps one constructed in a manner similar  to
the  "KMQ  (tm)" type lorgnette style viewer described in Europe,  but
how well such a viewer might work could depend in part  on  the  image
centers  distance  between the two stereo images on your monitor.  One
issue with wedge prism viewers might be that when the prisms are  made
just  from  one  kind  of  glass or plastic there may be some residual
chromatic aberration,  i.e.  rainbow fringes.  To account for some  of
the  rainbow fringes each of the two wedge prisms might be made of two
prisms made of different kinds of glass so that some of the  chromatic
aberration  might be reduced,  i.e.  achromatic wedge prisms.  In some
cases it might be  possible  to  view  the  "Over-Under"  format  with
"periscope"  type front surface mirror viewers using two front surface
mirrors for one eye where the mirrors can  tip  to  make  up  for  the
difference  in  the  vertical image to image center distance.  To keep
the optical path length the same for the two eyes two periscopes might
be used,  the right one going up,  and the left one going  down,  both
adjusted to align the view of the images with the vertical center line
of  the  monitor's  screen.  If  two periscopes are used you would use
four front surface mirrors.  Four 90 degree  prisms  can  be  used  in
place of four front surface mirrors to make two periscopes.  Using the
STEREO  command's  "BorderColor"  option may help in lining up the two
images.  Using the monitor's horizontal and vertical size  adjustments
may  help  achieve  convergence  by  letting  you  change the distance
between the right and left image centers,  this  may  be  particularly
helpful when using a wedge prism viewer that is not adjustable.


FormatCode = 120

When  AspectComp  is  set to 0 this "Squeezed Over-Under" right on top
format might be useful for viewing with the same kind  of  viewers  as
would  be  used with the FormatCode 100 format,  except that you would
need to reduce the monitor width control to get an  un-squeezed  image
with  double  the horizontal resolution.  The horizontal resolution is
double since no black padding would be needed on the sides of the  two
images.  If  your  monitor's horizontal size or width control does not
have enough range to reduce the on-screen image width to 50% you might
also use the AspectComp value to try to correct for some  of  the  on-
screen  distortions.  FormatCode  120  is not for use with Sync Double
LCS glasses since those require black padding between the  two  images
for  the  second  vertical  retrace  period,  see  FormatCode  121 for
displaying images in stereoscopic shutter glasses Sync  Double  stereo
modes.  Within  FormatCode  40  the  AspectComp  value can select sub-
formats,  when it is 1 the image is un-squeezed such that it is a wide
aperture  of  the  usual screen image with the top and bottom cut off,
when it is 2 the image contains a small version of  the  usual  screen
image  plus  extra on the sides within the wide aperture.  If you want
to adjust the monitor raster size in an asymmetric  way  in  order  to
adjust the center distance of the two images to try to correct for the
limitations of some viewing aid, the AspectComp values 100 to 120 work
like  1  except  the  aspect compensation is adjustable in grades from
mode 0 to 1 and past 1,  and values 200 to 220 work like 2 except that
the  aspect  compensation is adjustable in grades from 0 to 2 and some
extra beyond that.  To view the "wide screen"  over-under  images  you
will probably need some kind of prism or periscope viewer.  FormatCode
120  could  be  used  like  FormatCodes  20  or 40 in a movie or slide
projector,  the double projection  lenses  though  would  need  to  be
rotated 90 degrees and adjusted for the smaller image center distance.


FormatCode = 121

This   "Squeezed  Over-Under,   Vertical  Sync  Doubler"  format  with
adjustments is for use with Liquid  Crystal  Shutter  Glasses,  a.k.a.
LCD  Shutter  Glasses  or  LCS  glasses.  To  double the vertical sync
coming from your video board you attach a circuit between  your  video
board, a.k.a.  video card, and your monitor's video input cable.  This
circuit picks up the vertical sync pulse,  waits about  one  half  the
vertical retrace frequency,  then sends a second vertical retrace sync
pulse to the monitor, thereby doubling the vertical retrace frequency.
So if your video board is outputting 60Hz for the  vertical  sweep  in
your monitor, your monitor will sweep at 120Hz when sync doubled.  The
advantage of sync doubling your monitor may be two fold,  there may be
less flicker when using the Shutter Glasses,  and the  flip-flop  that
feeds  drive  signals  to the shutter glasses might be used to display
the two stereo images without the need to "page flip" the video memory
in the video board during the use of the video board's  non-interlaced
modes.  If  you  sync  double the monitor when viewing ordinary menus,
and such,  you will see the top of the menu  stretched  out  with  the
bottom  also stretched out and superimposed over it,  i.e.  the normal
screen display is "scrambled" and not readily usable.  So in order  to
use  the  Sync  Double  stereoscopic display mode you need to have the
screen image specially formatted with the image for one eye on the top
of the screen squeezed vertically,  and the image for  the  other  eye
vertically  squeezed  on the bottom of the screen.  Since the electron
beam in the monitor is moving from the bottom of the screen back up to
the top of the screen after the second sync  pulse  generated  by  the
Shutter Glasses driver circuit,  the top of the second image cannot be
right next to the bottom of the first image, there needs to be a black
strip between the two images.  For use with my programs  it  might  be
desirable  for  the  shutter  glasses  controller circuit to have full
manual control,  i.e.  one button for the shutter glasses stereo mode,
i.e.  "Interlace",  "Page Flip",  "Line Blank", and "Sync Double", and
another button for the left and right  view  reverse.  FormatCode  121
has  some extra options that are needed for its use,  "SyncAdjust" and
"SyncTweak" let you try to set the height of the  black  band  between
the  two  squeezed  eyes images to a value that might help line up the
two images on top of each other when the shutter glasses controller is
set to "Sync Double" stereo mode.  The number of scan lines needed for
the black strip  may  be  different  for  different  video  modes  and
monitors,  so  you will need to figure out what values might work with
your hardware,  and use those values to generate images for display on
your  hardware.  SyncTweak might be tried in addition to SyncAdjust to
move just the top  image  down,  or  just  the  lower  image  up.  Set
SyncTweak  to  0  and use SyncAdjust to get the images as close as you
can,  then if needed try making SyncTweak a positive or negative value
to  try  to  get  the two images superimposed.  Having a border on the
images helps with alignment,  see the  BorderColor  option.  SyncTweak
may  not  help  in  some cases,  or if the controller senses the video
signal in addition to the sync signal, and such.  Since the two images
are each less than half the full screen height  in  sync  double  mode
AspectComp  is used to figure out how to resolve the non-square pixels
and reduced image aperture,  the options are:  0 = crop the images  so
that a little is lost of the top and bottom, 1 = compensate the Y axis
aspect  ratio  so that the image is squeezed a little more to fit into
the aperture that is less than half the screen high,  and 2 makes  the
image  smaller  and  wide screen by reducing both the image height and
width while adding some extra image area on the sides.  Options 0  and
2  generally  do  not  require  adjusting  the  monitor  vertical size
adjustments when going to and  from  regular  to  sync  double  stereo
modes.  Option  1  shows the usual image area,  but since the image is
squeezed more than 2 times the vertical size adjustment on the monitor
may need to be adjusted each time you go in and  out  of  sync  double
mode  by  pressing the button on the shutter glasses controller.  When
your video board is outputting interlaced video signals you may not be
able to use the "Sync Double" stereo  mode  on  your  shutter  glasses
controller  since  the  monitor may superimpose the two fields and the
image resolution may look less than if  the  interlace  was  displayed
normally.  Some video boards may sometimes output non-interlaced video
signals  at  the lower resolutions and interlaced video signals at the
higher resolutions.  When  your  video  board  is  working  at  higher
resolutions  and  is  interlacing  you  may need to use FormatCode 160
rather than FormatCode 121 for displaying images with shutter glasses.
The "Sync Double" images can only be displayed "full screen" and  only
at the resolution they were created for, also the sync adjustments are
dependent  on  your  particular  monitor  and  video refresh rate,  so
FormatCode 121 is mostly just for displaying 3D stereoscopic images on
your particular computer system,  if you need to share 3D  images  for
use  with  shutter  glasses FormatCode 160 is probably a better choice
most of the time.  If you need to share an  image  or  animation  that
needs  to  be  displayed  in FormatCode 121 you can share a macro file
that generates the image or animation and the person running the macro
can try to adjust the parameters of the STEREO macro command to try to
get the "Sync Double" images to display on his or her computer system.


FormatCode = 160

This "Interleave/interlace/line blank" format with right  eye  on  odd
rows  is  for  use  with  Liquid Crystal Shutter Glasses,  a.k.a.  LCD
shutter glasses or LCS glasses.  The image is made up  of  alternating
lines  from the two views,  one line from the right view then one from
the left view,  and so on throughout the height of the combined image.
FormatCode  160  might  be  a satisfactory format for display when the
video board and monitor and shutter glasses controller are working  in
"interlace"  scanning  mode.  When the video board is working in "non-
interlace" video mode FormatCode 160  might  also  be  viewed  if  the
shutter  glasses  controller  circuit  has a "line blank" stereoscopic
mode.  In some cases "line  blank"  stereo  mode  may  look  a  little
darker,  or  a  little  less sharp,  than some other stereo controller
circuit mode since every other scan line gets turned off and the video
signal goes through a blanking circuit.  In "interlace" mode each  eye
sees alternate scan lines.  Since the vertical frequency may be slower
during "interlace" stereo mode there may be a little less ghosting due
to the phosphors having more time to decay.  In "interlace" video mode
the  video  signal  frequency  may  be  lower  which  might  make  the
horizontal details sharper in some  cases.  In  "sync  double"  stereo
mode  using  FormatCode  121,  with  the video board operating in non-
interlaced video mode,  both vertical and video frequencies  going  to
the  monitor  may  he  higher,  and so,  possibly reduce sharpness and
increase ghosting a little.  FormatCode 160 might be good for use when
the image is to be displayed as part of a document or on the  internet
since the stereoscopic image does not have to take up the full screen.
Because  scrolling  a  displayed  page  containing an image made using
FormatCode 160 can reverse the right and left eye scan lines,  you may
need to press the eye reverse button on the shutter glasses controller
circuit  to  have the right eye view get to the right eye,  and so on.
When  "Interlaced"  images  are  converted  from  BMP  to   compressed
filetypes  you  should select no or minimum compression since blurring
of the vertical or horizontal details may be destructive  to  some  of
the stereoscopic integrity, so it might be better to keep stereoscopic
images un-compressed.  "Sync Double" images need to be displayed "full
screen" since the timing of the monitor sync  depends  on  the  images
displayed, also the black strip in "Sync Double" images probably needs
to   be  different  for  different  monitors  and  video  modes.   The
"Interlace" format does not need to be displayed full screen, and sync
adjustments within the image are not generally  required  for  various
monitors  or  video modes.  Because the vertical resolution is half in
"Interlace"  stereo  mode  higher  resolution  video  modes,  such  as
1280x1024  at 24bpp might be desirable when you do not need to animate
the images.  The program averages the scan  lines  for  conversion  to
"interlace"  mode rather than just dropping the in between lines.  For
use with my programs it might be desirable  for  the  shutter  glasses
controller circuit to have "full manual control", i.e.  one button for
the shutter glasses stereo mode, i.e.  "Interlace", "Page Flip", "Line
Blank",  and "Sync Double",  and another button for the left and right
view reverse.


FormatCode = 170

This "Lenticular/Parallax Barrier" format with the odd columns  having
the  right  eye view,  is for use with special LCD screens that have a
cylindrical lens sheet or other parallax barrier attached so that each
eye sees just the even or odd pixel columns.  It  is  like  FormatCode
160  but  runs  the  interlaced  lines up and down rather than side to
side.  Screens  that  have  the  parallax  barrier  built  in  may  be
infrequent now, but if you have one FormatCode 170 might make an image
that  can  be  displayed  on  it  for  viewing in Stereoscopic 3D mode
without glasses of any kind.  You might be able  to  make  a  parallax
barrier  for  your  regular LCD monitor by printing out a drawing with
thin lines spaced a little closer than the width of  the  screen,  one
line  for  each  pair  of  pixels on the LCD's screen,  then print the
drawing onto high contrast "litho" film so that you  have  wide  black
stripes  with  thin  clear lines.  If you get the spacing of the clear
lines correct, can get the film close enough, i.e. the right distance,
to the LCD monitor,  and you sit the right distance away in a darkened
room  you  might  be  able  to see some of the 3D images without using
glasses.  The spacing of the clear lines in the barrier  sheet  should
ideally  be  slightly  non-linear from center to the sides in order to
compensate for the particular distance between  the  monitor  and  the
viewer.  Do  not try to use a parallax barrier sheet on a CRT monitor,
it is probably too hard to  get  the  on  screen  image  and  vertical
barrier  mask  aligned,  especially  at higher resolutions.  A company
called i-Art (tm) at www.iart3D.com,  seems to be  offering,  or  have
offered,  an  add  on  kit that puts a transparent lenticular sheet in
front of your normal LCD monitor called "Auto3D Kit (tm)".  I have not
tested this product and do not endorse it for use  with  my  programs,
but  you  may  want  to  check  for more information if you have a LCD
monitor, since it might let you view stereoscopic images without using
glasses of any kind.  If ghosting  is  present  when  viewing  with  a
parallax  barrier  or lenticular sheet you might experiment with using
some ghost masks to see if there is any benefit.


FormatCode 205

This Red-Cyan Monochrome balanced Anaglyph format uses glasses with  a
Red filter on the left eye and a Cyan filter on the right eye,  is one
of the more common Anaglyph viewing formats,  and might  be  used  for
stereoscopic display on various monitors,  and possibly to some extent
with color slides or print out.  If  your  Cyan-Red  Anaglyph  glasses
have  a red filter on the right eye use the "Reverse" parameter of the
STEREO command to swap the right and left eye  views.  FormatCode  205
might  be  a  good  choice for including 3D stereoscopic images on Web
pages, so long as the file compression is kept small, or not used,  to
reduce,  or  prevent,  any compression induced artifacts.  When making
Anaglyph images the Zshift, XSshift, EyeRot,  and EyeOff values should
probably  be  less than the values that look good for making images to
be viewed with shutter glasses since the ghosting typical with  impure
colored  glasses  may  make it difficult to fuse the two images if the
stereoscopic disparity is large.  To try to reduce  the  ghosting  you
may  be  able to look through two,  three,  or more,  stacked Anaglyph
colored glasses at the same time thereby filtering  the  light  better
and  perhaps  reducing  the  ghosting  somewhat.  Ghosting is seeing a
little of the left eye view in your right eye  and  a  little  of  the
right  eye  image in your left eye.  To try to evaluate the quality of
your Anaglyph glasses make an test  image  using  perspective  display
mode  10  and  a  large  amount of stereoscopic disparity for a bright
Anaglyph wire-frame outline with no  ghost  masking  against  a  black
background.  Look at the Anaglyph wire-frame image through the colored
glasses  and  cover your left eye,  this shows how much red is leaking
through the cyan filter,  then cover your right eye to  see  how  much
blue  and  green are leaking through the red filter.  You may see more
ghosting through one of  the  filters  than  the  other  filter.  Some
impure  Red-Cyan  Anaglyph glasses might leak quite a lot through both
filters possibly making viewing of  images  with  a  large  amount  of
disparity  problematic.  By  stacking  some  Red-Green 3D glasses over
some Red-Cyan glasses you may be able to reduce some of the  ghosting,
making  viewing  of 3D stereoscopic Anaglyphs better.  Filter stacking
can be taken to extreme proportions,  but  since  the  monitor  is  of
limited  brightness  you  are  limited  as to how many filters you can
stack before the image is too dim,  even when viewed in a totally dark
room.  Ghost  masking might be combined with filter stacking to try to
suppress whatever slight residual ghosting would  remain  when  filter
stacks  with  tolerable  transmission would be used.  Gamma correction
might also be helpful when very dark filters are used to  lighten  the
shadow  areas  of the image,  which otherwise might be too dark to see
well.  The computer monitor may not have 100% purity of  the  electron
beams  reaching  phosphor  dots  since there may be some spread of the
electrons passing through the internal shadow mask,  so the red  image
from  the  red  electron  gun may light up the blue and green phosphor
dots a little,  and the blue and green electron guns may light up  the
red  phosphor  a  little,  possibly  giving  rise to another source of
ghosting no mater how perfect the filters in the Anaglyph glasses are.
If you move the computer monitor you should probably degauss it  since
movement  of  the  CRT  monitor  may  effect  the  color purity.  Some
monitors may have better purity than others since there may  be  small
adjustments and magnets in the monitor the may effect the color purity
in  some  cases,  these  settings  are  generally done at the factory.
Another source for a possible loss of purity and  source  of  ghosting
might  be  from  the phosphors themselves,  when the phosphor dots are
applied using resists some of the other color phosphors may get washed
over  the  previously  applied  ones   giving   an   opportunity   for
contamination,  that is,  there may be a little blue or green phosphor
over the red phosphor dots,  and such.  Anaglyph images are simple  to
view by using just the properly colored glasses,  and might be easy to
share since anyone with the properly colored  glasses  might  also  be
able  to  try  to  view  them.  If  you are going to do quite a bit of
stereoscopic viewing just  by  yourself  the  Liquid  Crystal  shutter
glasses  may give you a somewhat nicer viewing experience with perhaps
less color "twinkling" and perhaps somewhat easier  fusing  of  images
with  large  stereoscopic  disparity  in  some  cases.  Images for LCS
glasses may not be as share-able if they have had to  be  tweaked  and
adjusted for your monitors quarks, e.g. "sync double" stereo mode, and
such.  When  posting  Anaglyph  images  on  the  internet  you  should
probably use the minimum image compression possible, or no compression
at all,  and use 24  bpp  color  since  any  reduction  in  the  image
resolution  may  contribute  to  "cardboarding"  of  the image details
making them look like  cardboard  cut-outs  rather  than  continuously
round  objects.  The  BMP  file  format  the program outputs in is un-
compressed and  gives  un-compressed  image  quality.  FormatCode  205
makes  a  stereoscopic Monochrome balanced image,  but FormatCodes 225
and 235 allow  tri-color  to  be  viewed  with  Red-Cyan  glasses.  To
possibly  improve  the ghosting issues due to filter or phosphor cross
talk when viewing Red-Cyan images a special narrow band  Yellow  light
absorbing filter,  such as Neodymium and Praseodymium or didymium rare
earth glass filter,  might be placed over both of the stacked Red  and
the stacked Cyan filters in the Glasses, or over the monitor screen as
a  whole.  How  much  benefit putting particular filters in the filter
stacks might be would depend on the various combined curves of all  of
the  system  components.  See  also  the associated text section about
Anaglyph viewing aids for additional Anaglyph information and  how  to
test Anaglyph filters using DANCAD3D.COM (tm).


FormatCode = 206

This  "Yellow-Blue"  Monochrome balanced Anaglyph format uses a Yellow
filter on the Left eye and  a  Blue  filter  on  the  Right  eye.  The
Reverse  option  can  be  used  to  swap  the  colors  for  the  eyes.
FormatCode 206 makes a Monochrome balanced image,  but FormatCodes 226
and  236  allow  color  to  be  viewed  with Yellow-Blue glasses.  The
Yellow-Blue glasses might be thought by  some  to  give  better  color
results than Red-Cyan glasses,  but the Yellow-Blue filter combination
might in some cases produce somewhat worse ghosting depending  on  the
purity  of  the  filters  used  for  viewing.  You can try to test the
quality of the filters used in  the  different  kinds  of  glasses  by
viewing  a bright Anaglyph wire-frame image against a black background
with no ghost masking,  and make up your own mind about which pair  of
colors  give  the  least  amount  of  ghosting and look best with your
monitor's phosphors.  Using stacked Deep  Amber  filters  and  stacked
Deep  Blue  filters  combined  with  narrow  band  blue-green blocking
filters, e.g. rare earth glass filter and or interference filters, may
give results with less ghosting than just a single  light  yellow  and
light  blue  filter.  See  also  the  associated  text  section  about
Anaglyph viewing aids for additional Anaglyph information and  how  to
test  Anaglyph  filters  using  DANCAD3D.COM  (tm).  There may be some
issues relating to proprietary rights regarding Yellow-Blue  anaglyphs
in some countries, so only do what is permissible in the jurisdictions
applicable.


FormatCode = 207

This  "Magenta-Green"  Monochrome  balanced  Anaglyph  format  uses  a
Magenta filter over the Left eye and a Green  filter  over  the  Right
eye.  The  Reverse option can be used to swap the colors for the eyes,
i.e to get a Green-Magenta image.  FormatCode 207 makes  a  Monochrome
balanced  image,  but FormatCodes 227 and 237 allow color to be viewed
with Magenta-Green or  Green-Magenta  glasses.  Magenta-Green  glasses
are not common,  perhaps due to the difficulty of getting filters that
are pure enough to block the ghosting.  Magenta-Green or Green-Magenta
anaglyph might possibly find some use perhaps in display methods  that
polarize the colors of light differently, and so if that were the case
the  image  might be viewed with polarized glasses rather than colored
glasses,  bypassing some of the issues  of  color  filter  purity,  or
polarized  and  colored  filters  could be stacked to reduce ghosting.
See also the associated text section about Anaglyph viewing  aids  for
additional Anaglyph information and how to test Anaglyph filters using
DANCAD3D.COM (tm).


FormatCode = 208

This  "Red-Blue" Monochrome balanced Anaglyph format uses a Red filter
over the Left eye and a Blue filter over the Right  eye.  The  Reverse
option  can  be  used  to  swap  the  colors for the eyes.  This color
combination may produce the lowest amount of ghosting if  the  filters
in  the  glasses  are very good since green tends to leak through both
red and blue filters,  i.e.  no green light may  equal  less  leakage.
Many  red  filters are actually reddish magenta,  so they may transmit
some blue.  To reduce blue transmission through  the  red  filter  the
deep  red  filter  should  be combined with some very strong yellow or
yellowish orange filters to block all of the blue light.  Blue filters
sometimes transmit a little red, so the blue filter should be combined
with bluish green filters in order to cut down on the  amount  of  red
light reaching the blue filter eye.  The strong purple effect of using
Red-Blue Anaglyph glasses may make viewing a little harsh on the eyes,
the  alternative  two-color FormatCode 209 the Red-Green Anaglyph mode
may not be as good for ghosting reduction,  but the yellowish  overall
tint might,  for some people,  be easier to look at for longer periods
of time.


FormatCode = 209

This "Red-Green" Monochrome balanced Anaglyph format uses a Red filter
over the Left eye and a Green filter over the Right eye.  The  Reverse
option  can  be  used  to  swap  the colors for the eyes for Green-Red
glasses.  This Red-Green Anaglyph format may be one of the traditional
Anaglyph color combinations used for  3D  stereoscopic  books  printed
with  Red  and  Green  inks  and for 3D Anaglyph motion pictures.  The
sensitivity of the red and green  nerves  in  the  eyes  is  close  in
wavelength  and  the  sensitivity  to  red  and  green  light overlaps
somewhat.  It is also hard to make red and green filters that  do  not
both  transmit  some  yellow  light.  So some ghosting when using Red-
Green Anaglyph glasses might be difficult to avoid unless the  filters
used over the eyes are very strong and the yellow light in the overlap
region  is  filtered  out.  Preferably the narrow band of yellow light
between colors red and green would be filtered out,  perhaps by adding
a  narrow band yellow absorbing filter to the red and green filters on
the Anaglyph glasses,  e.g.  the addition of didymium  or  rare  earth
Amethyst  Contrast  Enhancer type filters might have some effect.  How
much benefit rare  earth  filters  might  have  would  depend  on  the
transmission  of  the  other filters used,  and might not be worth the
extra cost.  Red-Green glasses may work better than Red-Blue  or  Red-
Cyan  glasses  on  printout  in cases where the red dyes or inks might
tend to allow  reflection  of  some  blue  light.  Printing  Red-Green
Anaglyph  images on broad band bright yellow paper may help filter out
undesirable blue  light.  Red-Green  may  work  better  than  Red-Cyan
images  when  projecting photographic slide transparencies if the dyes
in the slide's image leak blue light.  You might try to  use  a  broad
band  yellow  filter  pass  filter  and  a narrow band yellow blocking
filter over the slide projector to help the Red-Green Anaglyph glasses
differentiate the peek red and green parts of the spectrum.


FormatCode = 210

This "Green-Blue" Monochrome balanced Anaglyph  format  uses  a  Green
filter  over  the  Left eye and a Blue filter over the Right eye.  The
Reverse option can be used to swap the colors for the eyes  for  Blue-
Green  glasses.  Glasses with special filter stacks should probably be
used to  minimize  ghosting  when  viewing  "Green-Blue"  anaglyph.  A
narrow  band filter that absorbs light between green and blue might be
helpful in the filter stacks for this format.  Green and blue may, for
some people, show less color contrast than combinations involving red,
and so might perhaps tend to show less "twinkling", for some people.


FormatCode = 225

This half-color "Red-Cyan" format is for displaying desaturated  color
images  for  viewing  with "Red-Cyan" Anaglyph glasses like monochrome
FormatCode 205.  The half-color display mode gives some impression  of
color  with  less  of  some of the "twinkling" problems encountered in
full color Anaglyph images when highly saturated colors are  displayed
such  that  there  is a great difference in the brightness between the
same parts of the image in both eyes.  If you want  to  see  what  the
full color anaglyph image would look like try FormatCode 235.


FormatCode = 226

This  half-color  "Yellow-Blue"  format  is for displaying desaturated
color images for viewing  with  "Yellow-Blue"  Anaglyph  glasses  like
monochrome  FormatCode  206.  The  half-color  display mode gives some
impression of color with less of  some  of  the  "twinkling"  problems
encountered in full color Anaglyph images when highly saturated colors
are  displayed such that there is a great difference in the brightness
between the same parts of the image in both eyes.  If you want to  see
what the full color anaglyph image would look like try FormatCode 236.
There  may  be  some  issues  relating to proprietary rights regarding
Yellow-Blue  anaglyphs  in  some  countries,   so  only  do  what   is
permissible in the jurisdictions applicable.


FormatCode = 227

This  half-color  "Magenta-Green" format is for displaying desaturated
color images for viewing with "Magenta-Green"  Anaglyph  glasses  like
monochrome  FormatCode  207.  The  half-color  display mode gives some
impression of color with less of  some  of  the  "twinkling"  problems
encountered in full color Anaglyph images when highly saturated colors
are  displayed such that there is a great difference in the brightness
between the same parts of the image in both eyes.  If you want to  see
what the full color anaglyph image would look like try FormatCode 237.


FormatCode = 235

This  full-color  "Red-Cyan"  format is for displaying saturated color
images for viewing with "Red-Cyan" Anaglyph  glasses  like  FormatCode
205  and  225.  The  full-color display mode gives full color but with
some of the "twinkling" problems  encountered  when  highly  saturated
colors  are displayed such that there may be a great difference in the
brightness between the same parts of  the  image  in  both  eyes.  The
monochrome  FormatCode  205  may  be  easier  on  the  eyes  since the
brightness for corresponding parts of the image in both views  may  be
about  the  same.  The half-color FormatCode 225 gives some impression
of  the  colors  with  "twinkling"   problems   intermediate   between
Monochrome and full-color Anaglyph display.


FormatCode = 236

This full-color "Yellow-Blue" format is for displaying saturated color
images for viewing with "Yellow-Blue" Anaglyph glasses like FormatCode
206  and  226.  The  full-color display mode gives full color but with
some of the "twinkling" problems  encountered  when  highly  saturated
colors  are displayed such that there may be a great difference in the
brightness between the same parts of  the  image  in  both  eyes.  The
monochrome  FormatCode  206  may  be  easier  on  the  eyes  since the
brightness for corresponding parts of the image in both views  may  be
about  the  same.  The half-color FormatCode 226 gives some impression
of  the  colors  with  "twinkling"   problems   intermediate   between
Monochrome  and full-color Anaglyph display.  There may be some issues
relating to proprietary rights regarding Yellow-Blue anaglyphs in some
countries,  so only  do  what  is  permissible  in  the  jurisdictions
applicable.


FormatCode = 237

This  full-color  "Magenta-Green"  format  is for displaying saturated
color images for viewing with "Magenta-Green"  Anaglyph  glasses  like
FormatCode  207 and 227.  The full-color display mode gives full color
but with some of the  "twinkling"  problems  encountered  when  highly
saturated  colors  are  displayed  such  that  there  may  be  a great
difference in the brightness between the same parts of  the  image  in
both  eyes.  The  monochrome  FormatCode 207 may be easier on the eyes
since the brightness for corresponding parts  of  the  image  in  both
views may be about the same.  The half-color FormatCode 227 gives some
impression  of  the  colors  with  "twinkling"  problems  intermediate
between Monochrome and full-color Anaglyph display.


BorderColor:

The BorderColor parameter lets you set the color of  the  thin  border
around  each  of  the  stereoscopic  images,  or  to select no border.
Putting a border around  the  right  and  left  eye  images  can  make
aligning  the  images easier and make fusing of the stereoscopic image
in your mind easier since you have some  common  points  to  line  up.
Seventeen  options  are available,  sixteen colors and no border.  The
border takes one or two pixels from around the image since fitting the
images into the screen requires that the pixel  size  remain  constant
with or without the border.  The colors available are: 0=black, 1=dark
blue,  2=dark green,  3=dark cyan,  4=dark red, 5=dark magenta, 6=dark
yellow,  7=light gray,  8=dark gray,  9=light  blue,  10=light  green,
11=light  cyan,  12=light  red,  13=light  magenta,  14=light  yellow,
15=white,  16=no border.  Border color 6 may be a good choice for many
applications, such as "Crossed eye" free viewing.


Reverse:

The  Reverse  parameter  of the STEREO macro command lets you swap the
right and left eye views when generating the stereoscopic  image.  The
values  to  use are,  0=do not swap,  and 1=reverse right and left eye
views.  When using LCS glasses the electronic controller should have a
button on it that lets you  reverse  the  right  and  left  eye  views
without having to regenerate the stereoscopic image.


SyncAdjust:

The  "SyncAdjust"  only  applies  to sync double shutter glasses modes
such  as  FormatCode  121,  when  using  other  FormatCodes  set  this
parameter  to  0.  In order for the shutter glasses to be used in sync
double stereo mode the image on the screen must  consist  of  two  eye
images  squeezed  vertically  and  arranged in the above-below format.
Between the two images there must be  a  black  band  that  gives  the
electron  beam  in  the monitor time to make it back to the top of the
screen before the top of the lower image is displayed over  the  upper
image.  The  width  of  this  black  strip  will  need  to be wider or
narrower depending on the video mode selected,  the  vertical  refresh
rate  Hz,  and  the type of Monitor being used.  This SyncAdjust value
lets you make the black strip between the upper and  lower  images  on
the screen wider or narrower depending on the value that you enter.  A
value  of  around  46  may work with 640x480 mode but you will need to
experiment to see what values  work  with  your  computer  system  and
shutter  glasses.  To  test  the value make an image with a border and
increase this value by one each time  the  screen  redraws  until  the
borders line up with the shutter glasses control in sync double stereo
mode.  If  the  borders  go from one line too low to one line too high
you might try a non-zero "SyncTweak" value.  You  will  need  to  test
each  video mode that you want to use and write down the settings that
work with that mode.  The "SyncAdjust" values that work may range from
about 20 to 60 depending on the video mode  used.  The  "Sync  Double"
stereo  mode  may  not be usable for video modes that your video board
sends out as interlaced,  in which case you would use  FormatCode  160
and set the shutter glasses controller to "interlace" stereo mode,  or
perhaps "page flip" stereo mode if that works the same as  "interlace"
in  your  glasses  controller driver circuit.  Be sure that you adjust
the "SyncAdjust" and "SyncTweak" to get  the  right  and  left  images
superimposed  as  best you can or the ghost masking might not have the
mask and image aligned enough.


SyncTweak:

The "SyncTweak" parameter value should be set to 0 while adjusting the
"SyncAdjust" value.  "SyncTweak" only applies to  sync  double  stereo
mode  when used with Liquid Crystal shutter glasses,  e.g.  FormatCode
121.  When other format codes are used SyncTweak should usually be set
to 0. "SyncTweak" can be set to small positive or negative integers to
shift just the top image down or just the  bottom  image  up.  Usually
"SyncTweak"  would be set to 0 and "SyncAdjust" would be used alone to
align the left and right view images.  "SyncTweak" may not help at all
in some cases,  particularly in cases where the control circuit senses
the start of the video information, and such.


AspectComp:

The AspectComp value is needed to resolve some issues relating to  the
aspect ratio of images displayed using the Sync Double stereo mode for
shutter glasses, e.g.  FormatCode 121, and anamorphic FormatCodes 120,
20,  and 40.  For other FormatCodes AspectComp should generally be set
to 0.  In FormatCode 121 the black stripe in the center of the  above-
below  image used for Sync Double stereo mode takes part of the screen
so that each of the two eye images  are  less  than  half  the  screen
height.  There  are  three  ways  to  resolve  this  issue  by setting
AspectComp to:  0=crop image height to  fit  the  available  aperture,
1=compensate  by  squeezing  the  image  height  more  to fit into the
available aperture height,  and 2=reduce both  the  image  height  and
width  to  make  the  image  height fit the aperture and have a little
extra image  on  the  sides  giving  a  slightly  wide  screen  image.
AspectComp  options  0 and 2 help avoid having to adjust the monitor's
vertical size or height control each time you switch into  or  out  of
sync double stereo mode.  AspectComp option 1 lets you have the normal
4:3 screen image, but may require adjusting the monitors vertical size
or  height control each time you switch into or out of the sync double
stereo  mode  for  your  shutter  glasses.   In  FormatCode  120  when
AspectComp is 0 the two images are anamorphic squeezed vertically.  By
using  other  values  of  AspectComp  with  FormatCode 120 you can get
"over-under" "wide-screen" images that are  not  vertically  squeezed.
The  valid  values  to  use are:  AspectComp 0 = Y is 2:1 squeezed for
anamorphic over-under format, AspectComp 1 = adjust Y image aspect for
of the image half height and full width no  squeeze,  AspectComp  2  =
adjust  X  image  aspect  for  normal  image height and twice width no
squeeze, AspectComp 100 to 120 are grades between modes 0 and 1,  plus
extra,  and  may  require  the  monitor  raster size to be adjusted to
cancel distortion,  AspectComp 200 to 220 are grades between  modes  0
and 2,  plus extra, and may require monitor raster size to be adjusted
to cancel distortion, AspectComp 100 to 120, and 200 to 220,  might be
used  to  adjust the centers distance of the images for better viewing
with some fixed center viewers.  In FormatCode 40 when AscpectComp  is
0  the  two  images  are anamorphic squeezed across their width.  When
AspectComp is a value other than 0 a tall image aperture  side-by-side
image is made.  Values for AspectComp when FormatCode is 20 or 40 are:
AspectComp  0  = X is 2:1 squeezed for anamorphic side-by-side format,
AspectComp 1 = adjust X image aspect for normal image height and  half
width  no  squeeze,  AspectComp  2  = adjust Y image aspect for normal
width and twice height no squeeze,  AspectComp 100 to 120  are  grades
between modes 0 and 1, plus extra, and may, require the monitor raster
size  to  be adjusted to cancel distortion,  AspectComp 200 to 220 are
grades between modes 0 and 2,  plus extra,  and may,  require  monitor
raster  size  to  be adjusted to cancel distortion,  AspectComp 100 to
120, and 200 to 220, might be used to adjust the centers,  distance of
the images for better viewing with some fixed center viewers.


RightMask:

Ghost  masking  is  used  to  try to obscure ghost images seen through
filter glasses when the filters are not  perfect.  Best  results  will
probably  always be obtained by using viewing aids that do not produce
ghost images,  but when ghost images are present combining the  stereo
images  with  masking  images  may make the ghost images somewhat less
apparent.  The combination image of the original image and  the  ghost
mask  does  not  look like the original image since the mask image has
been combined with it,  and so whether or not the masked image is more
or  less  satisfactory is a subjective impression,  and will depend on
many factors only some of which may be controllable.  Since the  black
level  gets lifted during masking,  reducing the monitor brightness to
push the black level down may negate the masking and make  the  ghosts
visible again, particularly in the shadows.

If  the  filters  leak  quite a lot of light the amount that the black
level needs to be lifted to match the ghosts from the brightest  image
points may be more than what might be satisfactory,  so you may end up
just adjusting things so that some ghosts from the highlights are left
somewhat visible.  To offset this issue you may select element  colors
that are less bright,  e.g.  do not use white and such, and adjust the
lighting values and stereo gamma correction so that the foreground  is
not too much brighter than the other parts of the rendering.

The  values  for  RightMask  and  LeftMask  should  be  set  to  0 for
FormatCodes that do not superimpose the right and left images in  such
a  way  that  ghost images can be seen because of filter leakage,  and
such.  The RightMask and LeftMask values  set  some  fraction  of  the
opposite  eye  view  that is to be used to generate the masking image,
typical values range from about 0.1 to 0.35 with  larger  values  used
for more apparent ghosts and smaller values used for faint ghosts.  If
the  ghost  image  represents  only a small portion of the total image
brightness,  superimposing around the ghost a de-ghosting  image  mask
image might make the ghost somewhat less visible. In practice complete
nulling of the ghost is probably impossible,  because of non-linearity
of the monitor and other factors,  but some reduction  may  help  with
stereoscopic  fusion  under  some  circumstances such as viewing wire-
frame images.  For Ghost masking to work at  all  with  high  contrast
images  on a black background,  such as wire-frame display modes,  the
black level needs to be lifted to dark tones or  medium  tones.  Since
the  filters  in the glasses are dark the appearance of the lifting of
the black level is suppressed somewhat by the filters in  the  viewing
glasses,  and  therefore  the  lifting  of the black level may be less
noticeable with the viewing glasses on.

Ghost masking may tend to be more incomplete for Anaglyph images since
the chrominance component might not be nulled for large  bright  areas
in  the  stereo  images.  There are some things you might try to do to
improve the effectiveness of the ghost masking when used with Anaglyph
images,  such as moving far back to view  the  Anaglyph  images  at  a
distance  of more than four feet,  adjusting the monitor's controls to
reduce the contrast and increase or decrease the monitor brightness to
the level that nulls the ghosts best,  balancing the  right  and  left
masking  values  to correspond to the leakage differences of the right
and left eye filters, improving the filters in the glasses by stacking
filters to make the ghosts less bright so smaller values of ghost mask
are required,  adjusting the StereoGamma setting to flatten the  image
tones,  and  keeping  the  stereoscopic  disparity  small  to  help in
reducing the size of the color fringes.

Eyes tend lose the ability to differentiate color in details  if  they
are  very small and surrounded by another color.  So when the ghost of
a red wire-frame line is viewed through the green filter  with  a  dim
cyan mask image around the ghost,  and the monitor contrast is reduced
and brightness tweaked to balance the apparent brightness of the ghost
and the mask,  the ability to see the dim red ghost surrounded by  the
cyan mask tends to decrease the further you get back from the monitor.

Greatly reducing the brightness of the image and viewing in a darkened
room  may  reduce  the  perceived color from Anaglyph images since our
eyes cannot see much color in very dim light.  Viewing the images very
dim may help reduce the color  contrast  between  the  masks  and  the
images.

The  Ghost  masking  may  be  more  utilitarian when used with shutter
glasses.  The LCM electro-optical filter elements in  shutter  glasses
may  have  uneven  peak  density  across  their  filter  area,  so  no
particular value for the Ghost masks may  be  somewhat  effective  for
looking through all portions of the LCM shutter filter elements,  that
is when you look through different parts of  the  shutter  filter  the
ghosts  may  change  brightness.  If you move farther from the monitor
you may be better able to view the  whole  monitor  screen  through  a
small "sweet spot" in the LCM shutter filters,  if there is one.  Also
the LCM shutter filter for the right eye may  have  a  different  peak
density  than the LCM shutter filter for the left eye,  giving rise to
incomplete nulling for one of the two eyes if the same value  is  used
for  both  RightMask  and LeftMask,  hence the need for the ability to
enter separate masking values for the two filters.

Ghost  masks  may  in  some  cases  seem  to  reduce  the   subjective
assertiveness  of  some ghosts,  but the strength of the mask used may
need to be adjusted for best effect with a  particular  image,  stereo
mode,  and  vertical refresh rate used.  So masked images may not look
the same when viewed on other computers or with other shutter glasses.
Also the monitor brightness and contrast may need to be  adjusted  for
each image.

When  using  "Sync Double" stereo mode larger values for the RightMask
and LeftMask seem to be needed,  perhaps because the  higher  vertical
refresh  gives  less  time  for  the monitor's phosphors to decay,  so
values of 0.20 to 0.40 or more may be needed.  When using  "Interlace"
stereo  mode on the shutter glasses controller with the video board in
interlace mode at higher resolutions values from 0.10  to  0.30  might
seem  satisfactory.  When  using  "Line Blank" with the video board in
non interlace mode values around 0.15 to 0.35 might seem  close  to  a
good  fit.  Larger  values  may  need  to  be used for higher vertical
refresh Hz rates.

Because the ghost mask and image to mask are on different  scan  lines
in  field sequential images displayed for use with shutter glasses the
ghost mask may not register  or  fit  exactly  over  the  image  being
masked.   The  misregistration  might  be  caused  by  jitter  in  the
monitor's sync circuits,  jitter in the sync triggering of the shutter
glasses  controller,  timing errors during "Sync Double",  movement of
the viewers eyes,  interlacing,  or similar issues.  When the mask and
image  are  not  on  top  of each other at the same time small fringes
around the ghost may be visible.  Moving farther back from the monitor
may make the ghost fringes and other  misregistration  artifacts  less
visible.

When  using  "Sync  Double"  stereo  mode  be sure that you adjust the
"SyncAdjust" and "SyncTweak" as best you can to try to get  the  right
and  left images superimposed or the ghost and mask may not have their
images aligned well.


LeftMask:

Since the filters in the  stereoscopic  viewing  glasses  may  not  be
balanced  and  may  give ghost images of different brightness each eye
has its own ghost mask setting value, RightMask for the right eye, and
LeftMask for the left eye.  Imbalance of the ghost images is  probably
more  of  an  issue  with  Anaglyph  glasses  than with Liquid Crystal
Shutter glasses,  a.k.a.  LCS glasses.  The  setting  of  the  monitor
"drive",  "gain",  and "screen" controls for the red,  green, and blue
electron guns may effect the "black level" and "white  level"  of  the
three  colors,  and  make  their brightness relationship on the screen
"drift" or "cross over" when the brightness or  contrast  controls  on
the  monitor  are  adjusted.  To get the mask images to null optimally
may require making adjustments to the brightness and contrast controls
on the monitor, stacking filters on the glasses,  and or in some cases
perhaps  having  the monitor's internal controls adjusted by qualified
service personal to rebalance the three  colors.  The  three  electron
guns  should generally be adjusted to keep the relative brightness and
contrast of the red, green, and blue, images constant when the monitor
contrast and brightness controls are adjusted over their entire range,
and the brightness control should be able to  bring  the  black  level
above black.  If the monitor's colors do not track as needed, that may
exacerbate  the  problem  of finding a single setting of the monitor's
contrast and brightness controls that may help null the ghosts in both
eyes at the same time.


StereoGamma:

When the stereo images are viewed through dark filters, or the monitor
brightness is reduced it may be hard to  see  details  in  the  darker
areas  of  the images,  applying gamma correction to the stereo images
might be used to lighten the shadow  areas  to  make  viewing  better.
Doing  gamma correction to alter the image contrast may make the ghost
masking more effective for some source images, or monitor types.  When
StereoGamma is 1.0 no change is made, when StereoGamma is greater than
one the shadow areas are lightened,  and when StereoGamma is less than
one  the  shadow  areas  are  darkened.  A  value of around 1.4 may be
helpful.


Zshift:

The Zshift value might be used to make the displayed objects appear to
be closer to the viewer or further from the  viewer.  When  Zshift  is
zero  the workspace center is about even with the plane of the screen.
When  Zshift  is  less  than  0  the  rotation  point  for  EyeRot  is
effectively  moved forward,  so elements centered around the workspace
center would appear to be farther back or  inside  the  monitor.  When
Zshift  is greater than 0 the rotation point for EyeRot is effectively
moved backward, so elements centered around the workspace center would
appear nearer to the  viewer  or  in  front  of  the  monitor  screen.
Depending on your vision,  being near or far sighted and such,  it may
be easier for you to fuse  the  stereoscopic  images  if  they  appear
nearer  or  farther  away.  Zshift interacts with EyeRot and EyeOff so
those values may need to be adjusted when you make changes to  Zshift.
Zshift is normalized relative to the display scale in order to have it
have  a  relatively  constant  effect  regardless  of  the perspective
display scale,  otherwise every time you changed the display scale  to
make the image a little larger or smaller you would need to change the
Zshift  value  as  well,  you may still need to make small adjustments
sometimes  though.   Exaggerating  the  perspective  by  setting   the
Perspective Z vanishing point distance,  a.k.a.  zvp, value to a small
value relative to the depth of the elements being displayed may  cause
distortions  in  the  stereoscopic  disparity,  particularly at larger
values for the stereoscopic values,  so you may need to  increase  the
zvp to reduce such distortions.  The EyeRot value should not be 0 when
Zshift is not zero,  generally.  Typical values for Zshift might range
from -50 to +100 or so.


SXshift:

This Stereo X shift works somewhat like the Zshift value,  but through
a  mechanism  more  like  the  X shift perspective display value.  The
Zshift value moves the rotation point used with EyeRot, which converts
into increased or decreased stereoscopic disparity for the  foreground
or  background.  This  Stereo  X shift slides the two stereo images in
opposite directions,  which has the effect of moving  the  point  your
eyes  converge on when viewing the images move to or away from you.  A
value of 0 makes no change.  Values larger than 0 slide the images  so
that  the right eye view moves left and the left eye view moves right,
making you more cross eyed than you are just  looking  at  the  screen
plane,  putting  the  image  between the screen and your eyes.  Values
smaller than 0 slide the images so that the right eye view moves right
and the left eye view moves left,  making you less cross eyed than you
are  just  looking  at  the screen plane,  putting the image inside or
behind the  monitor's  screen.  These  values  are  normalized  for  a
display scale of 240,  and so scale to the screen's with being about 8
units.  You do not want to move the right eye image more than about  1
inch  to the right on the screen,  so negative values would be limited
to about -0.8 or so,  positive values would be limited to how far  the
images  can  spread  before  they  fall  off  the sides of the screen,
perhaps +1.0 to +2.0 or so.


EyeRot:

The EyeRot value is the apparent Y axis rotation  deviation  from  the
rotation  entered with the DISPLAY command for each eye,  the left eye
view rotates the elements so that more of the left  side  is  visible,
and  the right eye view rotates the elements so that more of the right
side is visible.  The EyeOff value simulates the parallax obtained  by
moving  ones  viewpoint  to  the left and right from the center of the
image.  Typical values for EyeRot would range from 0.2 to 0.4  degrees
for rotation to the right and to the left, i.e. this is the half angle
of  the  rotated  element  not  the triangle formed by both eyes.  The
amount of stereo rotation used should be limited in order to keep  the
maximum  disparity  of  the  near and far points on the elements being
displayed to about a  quarter  of  an  inch  on  the  monitor  screen.
Smaller  amounts of disparity should be used for Anaglyph images since
the larger the disparity is the more difficult it might be to fuse the
two images when ghosting is present.


EyeOff:

When EyeOff is used the element is offset to the  left  or  right  and
then  the X shift is used to re-center the element's image so that the
center of the workspace stays  near  the  screen  plane.  Keeping  the
workspace   center  near  the  screen  plane  might  help  reduce  the
stereoscopic disparity and thereby perhaps help to make the viewing of
the 3D stereoscopic combined image less of a strain on the eyes, since
when there is less stereoscopic disparity the  eyes  are  focused  and
converged close to the screen plane.  For convenience the EyeOff value
is normalized for a display scale of 240,  and the value entered stays
about the same for  any  display  scale  entered,  unlike  the  viewer
distance value used with the DISPLAY command and the main menu Preview
command.  Normalizing the EyeOff value helps to eliminate the need for
using  a  different  value  for  each  different display scale used to
generate the perspective view.  Typical values  for  EyeOff  would  be
about  0.1  to  0.2 units depending on the depth of the elements being
displayed.  You might want to keep the maximum disparity of  the  near
and  far  parts of the elements to no more than one quarter of an inch
on the monitor screen.  Smaller amounts of disparity might be used for
Anaglyph images since the larger the disparity is the  more  difficult
it  is  to fuse the two images when ghosting is present.  You may want
to reduce the EyeOff value when positive values for Zshift or  SXshift
are used, particularly larger values.


After  the STEREO command is used with the DISPLAY command the DISPLAY
command reverts to monoscopic display  mode,  i.e.  FormatCode  0.  So
each  time  you  want to make a stereoscopic image you need to put the
STEREO macro command before the DISPLAY command.

In the initial release of v2.7H when a stereoscopic image is generated
for display on the screen three BMP files are generated  and  left  on
the  disk  in  case  you  want to use them,  in that way you can avoid
having to regenerate the images for  some  applications,  which  could
save several days of computing for complex images.  Another reason for
saving  the  temporary  image files is that when you are displaying on
screen with the 15 bpp or 16 bpp VESA SVGA video modes  and  save  the
screen  image  as  a BMP file the BMP file will not look as good as it
would have if you saved it as a BMP file with 24 bpp color resolution.
To get around this short coming of using the 15 and 16 bpp VESA modes,
the image is generated as a 24 bpp BMP file then dithered further when
loaded into the screen as a 15 or 16 bpp image.  If you like what  you
see on the screen you can rename the temporary file named DANS0000.BMP
in  the  program's  directory  and  have  a  24 bpp version of what is
displayed on screen in 15 or 16 bpp VESA mode.  If  you  save  the  on
screen  image  as a BMP file you would get a 24 bpp BMP file converted
from the on screen 15 or 16 bpp image which would not  look  as  good.
If  you  want  the original separate images for the right and left eye
views to make right and left eye slides or for special processing with
the UTILITY  BMP_TO_BMP  commands  you  can  rename  the  files  named
DANR0000.BMP  and  DANL0000.BMP  to keep the right and left eye images
that were used to be combined into the  last  DANS0000.BMP  image.  If
you  are  using  the BMP graphics mode to make a BMP file the combined
stereoscopic image will not go to DANS0000.BMP,  it  will  go  to  the
output  filename  specified  in  the on disk variable B24NAME_.VAR and
file DANS0000.BMP will contain some older stereoscopic image.  If  you
want  to  save the temporary BMP files for future use be sure that you
do so before calling the STEREO and DISPLAY commands again,  since the
previous  images  will be overwritten and lost.  When using the 15 and
16 bpp VESA video modes for making stereoscopic images  the  dithering
values get altered internally in order to save the temporary BMP files
with  the  correct dithering for being 24 bpp,  so the dithering value
you enter is not used in the normal way.  The dithering value  entered
is used for VESA 24 and 32 bpp video modes and for the BMP video mode,
but  you  would always enter a dithering value of 4 normally for those
video modes.

FormatCodes 1 and 2 were added after the initial release of  v2.7H  so
that  the  eye views could be displayed separately such that the ghost
mask could also be included.  See the notes  about  these  changes  in
Section: 3.3.7.8.

When  you  want to include a stereoscopic background image you need to
do some special things with the background image  file.  If  the  last
letter  of  the background image filename coded is an letter S,  and a
stereoscopic FormatCode other than 0 is also entered, the program then
replaces the S with R in the background filename when making the Right
eye view image,  and replaces the S with a L when making the Left  eye
view  image.  If  you  want the same BMP file loaded as the background
image in both the Right and Left  eye  images  then  the  last  letter
should not be a letter S, and should be a letter M, although any other
letter  than  S may work in present revisions,  in the future M may be
required.  The letter S just before the period in the  BMP  background
filename  keys stereoscopic background mode,  the letter M just before
the period in  the  filename  keys  monoscopic  background  mode.  The
filename  coded  with  the  last  letter being S does not exist on the
disk,  and will not appear in the file directory,  you would  need  to
look for the filename ending with R or L since those are the names you
would save the stereoscopic background images under.

Thusly:

Code  C:\MYDIR\MYBACK1S.BMP
then  C:\MYDIR\MYBACK1R.BMP is loaded for the Right eye view background,
and   C:\MYDIR\MYBACK1L.BMP is loaded for the Left eye view background.

Code  C:\MYDIR\MYBACK1M.BMP
then  C:\MYDIR\MYBACK1M.BMP is loaded for the Right eye view background,
and   C:\MYDIR\MYBACK1M.BMP is loaded for the Left eye view background.

This way of keying the background image name lets the program use just
the usual one filename string variable,  i.e.  B24BACK_.VAR, with both
stereo and non-stereo display modes,  and lets you pick the use  of  a
stereoscopic or monoscopic background image.

To  make the two stereoscopic background images with DANCAD3D.COM (tm)
you can use the STEREO and  DISPLAY  macro  commands  to  display  the
background  elements  with  the  same settings and FormatCode that the
rest of  the  elements  will  be  displayed  with.  After  a  combined
stereoscopic image is made you just copy the temporary eye image files
the  program  leaves  on  the  disk,  so  that they can be used as the
background files later.

{ Example way to copy background image files }
FILES COPY DANR0000.BMP C:\MYDIR\MYBACK1R.BMP
FILES COPY DANL0000.BMP C:\MYDIR\MYBACK1L.BMP

When making stereo backgrounds be  careful  about  the  direction  and
amount  of  disparity  since  the  background  must  appear behind the
elements to have the elements display over  the  background,  and  the
direction  and  amount  of disparity must be small enough to allow the
viewer to fuse the images easily.  And be sure the display values  are
the  same  when the background is used to make a rendering so that the
foreground and background will look like they go together.


HINT:         See also  the  information  in  Section:  3.3.7.8  about
              viewing stereoscopic images. See also the GRAPH_MODE and
              DISPLAY macro commands.  When you display  a  tool  path
              file  as  a stereoscopic image it may be best to use the
              MUTATE command to convert the tool  path  line  segments
              into 3D triangle elements so the the "lines" in the tool
              path  will  be  sorted  by  depth,  i.e.  only  triangle
              elements get sorted  by  depth.  Having  the  tool  path
              "lines"  sorted  by  depth  may  help in discerning some
              features.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

STOP

PURPOSE:      To STOP a running macro and return  to  the  main  menu.
              This command is equivalent to pressing [Control] and [X]
              while the macro is running,  commands  beyond  STOP  are
              skipped  and  the main menu will come back up.  This and
              related macro command HALT have been revised in v2.7A so
              information below applies to v2.7A.

MAIN MENU:    [R] ... ^[X]

KEYWORD:      STOP

PARAMETERS:   NA

TYPE:         NA

FORMAT:       STOP

EXAMPLE:      :DO_OVER
              LET |E = 0
              ECHO ENTER ELEMENT TO ROTATE OR -1 TO END %%
              INPUT |E
              IF |E > -1 THEN GOTO :CONTINUE
              STOP
              :CONTINUE
              LET |ELEMENTS -> ELEMENTS
              IF |E > |ELEMENTS THEN GOTO :DO_OVER
              # |E ROTATE C |X |Y |Z

HINT:         Use STOP when debugging to stop the macro, at the bottom
              of the part of the macro you are working on, so that you
              can use [P]review from the main menu  to  see  what  you
              have  been making in the workspace up to the point where
              you put the STOP command into your macro file.  See also
              REMARK commands ;  and { } as well as TRACE and  OUTPUT.
              Use  the  WAIT  command  when you just want the macro to
              pause until the [Return] key is pressed.  When  you  use
              the  STOP  command  the  contents  of  the workspace are
              preserved and can be examined  with  [P]review,  [D]raw,
              and [N]umeric [L]isting from the main menu.  If you wish
              to  back  up the workspace before using the STOP command
              then use the SAVE ELEMENTS  command.  The  STOP  command
              works  about like what happens when you press the [Ctrl]
              & [X] keys while the macro  is  running.  See  also  the
              DELAY,  HALT, and WAIT commands.  The HALT macro command
              should be used to end a macro when the  macro  is  being
              called from a DOS batch file and you want the batch file
              to  continue after the macro by having DANCAD3D.COM (tm)
              automatically quit back to  the  batch  file.  When  you
              want  the  macro to pause for a fixed time then continue
              on its own, use the DELAY macro command.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

STRIP

PURPOSE:      The  STRIP command removes comments from a macro file to
              make the file take less disk  space,  and  possibly  run
              faster.  New for v2.7A.

MAIN MENU:    [F] [U] [M] [S]

KEYWORD:      STRIP

PARAMETERS:   1

TYPE:         f......... filename of macro to strip.

FORMAT:       STRIP f

EXAMPLE:      STRIP MYMACRO.MAC

NOTE:         Be  sure  to  backup  the file before you strip it since
              code  areas  commented  out temporally will be lost,  as
              will  parts  of  the  macro  where  comments  where  not
              properly entered.  The FILES COPY macro command might be
              used to make the back-up copy of your macro.

HINT:         See  also  the  REMARK,   FILES  COPY,   CHECK_SUM,  and
              EXPORTFILE macro commands.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

STROKE_PITCH

PURPOSE:      The  STROKE_PITCH command lets you change the thick line
              stroke pitch from inside a macro file to compensate for
              the output resolution.  See also the Drawing editor's
              Setup sub-menu Stroke pitch command to do the same thing
              from a menu command. New for v3.7N.

MAIN MENU:    [D] [S] [S]

KEYWORD:      STROKE_PITCH

PARAMETERS:   1

TYPE:         r......... value for stroke pitch in dpi, default 300.

FORMAT:       STROKE r

EXAMPLE:      STROKE_PITCH 300

NOTE:         The World scale also regulates  the  look  of  thickened
              lines  so  be  sure  it  is set to a valid value for the
              output you wish to  make.  You  can  use  this  also  to
              adjust the stroke pitch for tool paths to compensate for
              the wide tool not needing so many strokes.

HINT:         See also the WORLD_SCALE, DISPLAY, JET, and DOT macro
              commands.


Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

SLOPE

PURPOSE:      To make an element slant  like  a  parallelogram.  SLOPE
              acts on the currently selected element.  This command is
              not used very much, but can be used to adjust the italic
              angle in italic text, or for some special effects.

MAIN MENU:    [D] [?...] [3] [S]

KEYWORD:      SLOPE

PARAMETERS:   3

TYPE:         w......... Axis to do slope to: X or Y or Z.
              w......... Axis to use as reference for slope.
              r......... Degree of slope, -100 to 0 to +100.
                         Try values of slope from -.5 to .5 to start.

FORMAT:       SLOPE w w r

EXAMPLE:      # 3 SLOPE X Y 1.5

HINT:         This is a special purpose command.  If you want to alter
              the  italic angle of some text you can use this command.
              It might also be interesting for making grass and  trees
              sway  in  the  "wind",   or  simulating  the  effect  of
              earthquakes.  You can also impart a kind  of  pantograph
              motion  to cylinders and make objects look like they are
              made of a pile of very thin teflon sheets  being  pushed
              around.  Using  slope  on  a block of text might make an
              attractive graphic arts effect.  Using an inverse italic
              factor for the block of text might make  unusual  "stair
              case" columns of text after they are sloped.

Click here to go to the Macro Keywords A to Z list.
Click here for more information about Appendix B.
Click here for more information about Appendix C: Macro Math and Strings.
Click here for more information about Writing macro code.
Click here to go back to the top of this page.

TERMS OF USE, HOME, INDEX, SHORTCUT, WHAT'S NEW, DOWNLOADS, GET MAIN ZIP, DOCUMENTATION, VIDEO, HOOKUP#1, #2, #3, KEYWORDS

WWW.DANCAD3D.COM (sm): THE OFFICIAL DANCAD3D (tm) "BETA TEST" WEB SITE.

This copy of this page was compiled on or around: Y2011.M11.D23, you might check the "On-Line" version, or come back later, to see if there is a newer compile.