Commit bdc12545 authored by teuben's avatar teuben
Browse files

import v0.1

parent dc34cf7a
# top level Makefile for partiview
VERSION = `cat VERSION`
EDIR = partiview-$(VERSION)
EFILE = $(EDIR).tar.gz
RDIR = teuben@apus:/apus1/nemo/local/www/amnh
# things to export
FILES = HISTORY Makefile VERSION README.FIRST
DIRS = src data doc nemo starlab windows
help:
@echo Nohelp for VERSION=$(VERSION)
@echo Expordir = $(EDIR)
.PHONY: tar export
# this will only work with linux (cp -a)
tar:
rm -rf export/$(EDIR)
mkdir export/$(EDIR)
cp -a $(FILES) $(DIRS) export/$(EDIR)
tar -C export -zcf $(EFILE) $(EDIR)
export:
scp -C $(EFILE) $(RDIR)
# webpage update
RDIR = teuben@apus:/apus1/nemo/local/www/amnh
EXPORT = partiview*html partiview.ps partiview.sgml partiview.txt
help:
@echo all: ps html
@echo export: copy EXPORT to RDIR
@echo ""
@echo EXPORT=$(EXPORT)
@echo RDIR=$(RDIR)
.PHONY: txt ps html
all: txt ps html
txt:
sgml2txt partiview.sgml
ps:
sgml2latex partiview.sgml
dvips partiview -o
html:
sgml2html partiview.sgml
# merely to update my webpage
export:
scp -C $(EXPORT) $(RDIR)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Installation</TITLE>
<LINK HREF="partiview-2.html" REL=next>
<LINK HREF="partiview.html#toc1" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-2.html">Next</A>
Previous
<A HREF="partiview.html#toc1">Contents</A>
<HR>
<H2><A NAME="s1">1. Installation</A></H2>
<P>
<P>This assumes you have the October 2000 release (version 0.1 or higher) of
<B>partiview</B>, not the earlier "<B>gview</B>" release that was described
in earlier versions of this document.
<H2><A NAME="ss1.1">1.1 MESA/OpenGL</A>
</H2>
<P>First make sure <CODE>Mesa</CODE> is installed, for <CODE>redhat6.2</CODE>
there are rpm files
available. Check if you have the following:
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
% rpm -qa | grep Mesa
Mesa-3.2-2
Mesa-devel-3.2-2
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>You should see both.
<P>Homepage:
<A HREF="http://mesa3d.sourceforge.org">http://mesa3d.sourceforge.org</A><P>Redhat packages: (part of powertools i believe)
<P>
<H2><A NAME="ss1.2">1.2 FLTK</A>
</H2>
<P>Also make sure <CODE>fltk</CODE> is installed. If you got my version, do this (as
root)
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
% cd &lt;where-ever>/fltk-1.0.9
% make install
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>(you only need it if you want to recompile the program at some point,
not if you just want to run it)
<P>Homepage:
<A HREF="http://www.fltk.org/">http://www.fltk.org/</A><P>Redhat packages:
<A HREF="http://www.cs.cornell.edu/nogin/RPM/fltk-devel.html">http://www.cs.cornell.edu/nogin/RPM/fltk-devel.html</A><P>
<H2><A NAME="ss1.3">1.3 partiview</A>
</H2>
<P>now compile (if you really want to) the program, normally a (linux) executable
should be in the <CODE>src</CODE> directory already:
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
% tar zxf partiview-0.1.tar.gz
% cd partiview-0.1/src
% make clean (if you really must compile a new executable)
% ./configure (creates a new Makefile from Makefile.in)
% make partiview (might need to edit the Makefile)
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>
<P>
<HR>
<A HREF="partiview-2.html">Next</A>
Previous
<A HREF="partiview.html#toc1">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Directory structure</TITLE>
<LINK HREF="partiview-3.html" REL=next>
<LINK HREF="partiview-1.html" REL=previous>
<LINK HREF="partiview.html#toc2" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-3.html">Next</A>
<A HREF="partiview-1.html">Previous</A>
<A HREF="partiview.html#toc2">Contents</A>
<HR>
<H2><A NAME="s2">2. Directory structure</A></H2>
<P>
<P>Here is the proposed directory structure, as per version 0.1:
<P>
<P>
<BLOCKQUOTE><CODE>
<PRE>
partiview/ root directory
partiview/src source code
partiview/data sample datafiles (e.g. hipparcos)
partiview/doc manual (sgml, and derived html, txt, ps/dvi)
partiview/nemo NEMO specific converters/code
partiview/starlab STARLAB specific converters/code
partiview/windows windows executables/support (old)
</PRE>
</CODE></BLOCKQUOTE>
<P>
<HR>
<A HREF="partiview-3.html">Next</A>
<A HREF="partiview-1.html">Previous</A>
<A HREF="partiview.html#toc2">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Running the program</TITLE>
<LINK HREF="partiview-4.html" REL=next>
<LINK HREF="partiview-2.html" REL=previous>
<LINK HREF="partiview.html#toc3" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-4.html">Next</A>
<A HREF="partiview-2.html">Previous</A>
<A HREF="partiview.html#toc3">Contents</A>
<HR>
<H2><A NAME="s3">3. Running the program</A></H2>
<H2><A NAME="ss3.1">3.1 Simple example: hipparcos bright stars</A>
</H2>
<P>
<P>Now start the program using one of the sample "speck" files in the
<CODE>data</CODE> directory:
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
% cd partiview-0.1/src
% ./hipbright
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>and this will come up with a display. You should probably enlarge the
window a bit. Mine comes up in roughly a 300 by 300 display window,
which may be a bit small (certainly on my screen :-)
<P>
<P>hit the TAB key to bring focus the one line command window inbetween
the log screen (top) and viewing screen (bottom). Type the commands
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
fov 50 (field of view 50 degrees)
jump 0 0 0 80 70 60 (put yourself in the origin
and look at to euler angles
(60,70,60)
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>and it should give a nice comfy view :-)
<P>
<FIGURE>
<IMG SRC="pv1.gif">
<CAPTION>partiview view</CAPTION>
</FIGURE>
<P>
<P>[spatial units are parsec, angle units are degrees]
<P>Now play with the display, use 't', 'r', 'f' and 'o' keys and use the
left and mouse buttons down to (carefully) move around a bit, and make
yourself comfortable with moving around. Using the 't' button you get
some idea of the distance of the stars by moving back and forth a little
(the parallax trick). In fact, if you 't' around a little bit, you may
see a green line flashing through the display. That is on of the RGB
(xyz) axes atteched to the (0,0,0) [our sun] position. You should see
Procyon and Sirius exhibit pretty large parallaxes, but Orion is pretty
steady. If you move the right mouse button you will zoom in/out and
should see our Sun flash by with the red-green-blue axes.
<P>Try and use the middle mouse button (or the 'p' key) to click on Sirius
or Procyon, and see if you can get it to view its properties. Now use
the 'P' key to switch center to rotation to that star. Sirius is
probably a good choice. Move around a bit, and try and get the sun and orion
in the same view :-)
<P>[NOTE: these Hipparcos data do not have reliably distance above
100-200 pc, so Orion's distances are probably uncertain to 30%]
<P>
<P>A little bit on the types of motion, and what the mouse buttons do
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
| left middle right
| button-1 button-2 button-3
--------------------------------------------------------------------
f (fly) | fly 'pick' zoom
o (orbit) | orbit 'pick' zoom
r (rotate) | rotate X/Y 'pick' rotate Z (+bug?)
t (translate) | translate 'pick' zoom
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>The point of origin for rotations can be changed with the 'P' button.
First you can try and pick ('p' or button-2) a point, and if found,
hit 'P' to make this point the new rotation center default.
<P>
<P>
<P>
<BLOCKQUOTE><CODE>
<HR>
<PRE>
red = X axis
green = Y axis
blue = Z axis
</PRE>
<HR>
</CODE></BLOCKQUOTE>
<P>
<H2><A NAME="ss3.2">3.2 Top Row</A>
</H2>
<P>The top row, from left to right, shows the following buttons:
<P>
<DL>
<P>
<DT><B> More </B><DD><P>item
<P>
<DT><B> [g1] </B><DD><P>g1
<P>
<DT><B> [f]ly </B><DD><P>Shortcut to select fly/orbit/rot/tran, which can also be activate
by pressing the f/o/r/t keys inside the viewing window.
<P>
<DT><B> point </B><DD><P>Toggle to turn the points on/off
<P>
<DT><B> poly </B><DD><P>Toggle to turn polygons on/off
<P>
<DT><B> lbl </B><DD><P>Toggle to turn labels on/off
<P>
<DT><B> tex </B><DD><P>Toggle to turn textures on/off
<P>
<DT><B> box </B><DD><P>Toggle to turn boxes on/off
<P>
<DT><B> logslum lum </B><DD><P>Slider controlling a <B>datavar</B> variable (which?)
<P>
</DL>
<P>
<P>
<H2><A NAME="ss3.3">3.3 Second Row</A>
</H2>
<P>The second row controls loading and playing sequences of moving through space
<P>
<DL>
<P>
<DT><B> Load... </B><DD><P>Brings up a filebrowser to load a <B>.wf</B> path file. This is a file with on each
line 7 numbers: xyz location, RxRyRz viewing direction, and FOV (field of view).
<P>
<DT><B> Play </B><DD><P>Play the currently loaded path
<P>
<DT><B> &lt;&lt; &lt; [###] >>> </B><DD><P>Control individual path frames
<P>
<DT><B> slider </B><DD><P>Slider
<P>
</DL>
<P>
<HR>
<A HREF="partiview-4.html">Next</A>
<A HREF="partiview-2.html">Previous</A>
<A HREF="partiview.html#toc3">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Bugs, Features and Limitations</TITLE>
<LINK HREF="partiview-5.html" REL=next>
<LINK HREF="partiview-3.html" REL=previous>
<LINK HREF="partiview.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-5.html">Next</A>
<A HREF="partiview-3.html">Previous</A>
<A HREF="partiview.html#toc4">Contents</A>
<HR>
<H2><A NAME="s4">4. Bugs, Features and Limitations</A></H2>
<P>
<P>Here is a list of known peculiarities, some of them bugs, others just
features and others limitations, and there is always that class of
things I simply have not understood how it works.
<OL>
<LI> in rotate mode, if you change the center of rotation with 'P',
button-1 works fine, but button-3 does not rotate around the
new point correctly. It seems to remember the old (or 0,0,0)
origin.
</LI>
</OL>
<P>
<HR>
<A HREF="partiview-5.html">Next</A>
<A HREF="partiview-3.html">Previous</A>
<A HREF="partiview.html#toc4">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Limitations w.r.t. VirDir:</TITLE>
<LINK HREF="partiview-6.html" REL=next>
<LINK HREF="partiview-4.html" REL=previous>
<LINK HREF="partiview.html#toc5" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-6.html">Next</A>
<A HREF="partiview-4.html">Previous</A>
<A HREF="partiview.html#toc5">Contents</A>
<HR>
<H2><A NAME="s5">5. Limitations w.r.t. VirDir:</A></H2>
<P>
<P>
<OL>
<LI>cannot set an auto-motion, as we can in the dome, although one could
of course load a path and move through the dataset :-)
I was able to make a path (*.wf) file and load that though.
</LI>
<LI>how do we load in a timeseries again? I tried something like
</LI>
</OL>
<P>
<BLOCKQUOTE><CODE>
<PRE>
datavar 0 colorb_v
datavar 1 lum
datavar 2 Mv
datavar 3 mv
datatime 0
0 0 0 0.5 .008 5.2 -26.5
0 0 0 0.5 .008 5.2 -26.5
277.1 0.0 223.3 -0.02 2.87 -1.1 6.6 # 0000+3851
190.5 0.2 150.4 0.95 1.44 -0.4 6.5 # 0000+3818
...
207.6 7.7 411.3 1.00 5.8 -1.9 6.4 # 0008+6312
393.7 14.7 -124.8 1.66 6.14 -2.0 6.1 # 0008-1735
datatime 1
26.5 1.0 19.7 0.50 0.0358 3.6 6.2 # 0008+3638
....
84.8 6.9 -80.0 1.21 0.401 1.0 6.3 # 0018-4314
datatime 2
87.4 7.4 -13.6 1.21 2.97 -1.2 3.6 # 0019-08 iota Cet Deneb Kaitos Shemali
...
</PRE>
</CODE></BLOCKQUOTE>
but that didn't seem to do much. Neither with the <CODE>></CODE> or
<CODE>&lt;</CODE> keys or the <CODE>step</CODE> command....
<P>
<P>
<P>
<HR>
<A HREF="partiview-6.html">Next</A>
<A HREF="partiview-4.html">Previous</A>
<A HREF="partiview.html#toc5">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): VIRDIR commands</TITLE>
<LINK HREF="partiview-7.html" REL=next>
<LINK HREF="partiview-5.html" REL=previous>
<LINK HREF="partiview.html#toc6" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-7.html">Next</A>
<A HREF="partiview-5.html">Previous</A>
<A HREF="partiview.html#toc6">Contents</A>
<HR>
<H2><A NAME="s6">6. VIRDIR commands</A></H2>
<P>
<P>(see also partibrains.c::specks_parse_args)
<P>
<P>
<DL>
<P>
<DT><B>read </B><DD><P>read a specks data file
<P>
<DT><B>include </B><DD><P>NOTYET, does the same as the <B>read</B> command.
<P>
<DT><B>on</B><DD><P>
<DT><B>off</B><DD><P>
<DT><B>enable</B><DD><P>
<DT><B>disable</B><DD><P>
<DT><B>eval</B><DD><P>
<DT><B>add</B><DD><P>
<DT><B>async </B><DD><P>specks_add_async
<P>
<DT><B>update </B><DD><P>parti_update
<P>
<DT><B>hist</B><DD><P>
<DT><B>bound</B><DD><P>
<DT><B>fspeed</B><DD><P>
<DT><B>speed</B><DD><P>
<DT><B>run</B><DD><P>
<DT><B>fade</B><DD><P>
<DT><B>clipbox [cb]</B><DD><P>
<DT><B>object</B><DD><P>
<DT><B>tfm</B><DD><P>
<DT><B>bgcolor</B><DD><P>
<P>BEGIN !CAVEMENU (virdir emulation)
<P>
<DT><B>stereo</B><DD><P>
<DT><B>snapset</B><DD><P>
<DT><B>snapshot</B><DD><P>
<DT><B>move</B><DD><P>
<DT><B>move-objects</B><DD><P>
<DT><B>clip</B><DD><P>
<DT><B>ortho</B><DD><P>
<DT><B>fov</B><DD><P>
<DT><B>fovy</B><DD><P>
<DT><B>focal</B><DD><P>
<DT><B>jump</B><DD><P>
<DT><B>rdata</B><DD><P>
<DT><B>readpath</B><DD><P>
<DT><B>play</B><DD><P>
<DT><B>frame</B><DD><P>
<DT><B>int[erest]</B><DD><P>
<DT><B>cen[ter]</B><DD><P>
<DT><B>censize</B><DD><P>
<P>END !CAVEMENU (virdir emulation)
<P>
<DT><B>step</B><DD><P>
<DT><B>fwd</B><DD><P>
<DT><B>gscale</B><DD><P>
<DT><B>clearobj</B><DD><P>
<DT><B>every</B><DD><P>
<DT><B>color</B><DD><P>
<DT><B>datavar [dv]</B><DD><P>
<DT><B>datawait</B><DD><P>
<DT><B>lum</B><DD><P>
<DT><B>cmap</B><DD><P>
<DT><B>boxcmap</B><DD><P>
<DT><B>cment</B><DD><P>
<DT><B>boxcment</B><DD><P>
<DT><B>only</B><DD><P>
<DT><B>thresh</B><DD><P>
<DT><B>rawdump</B><DD><P>
<DT><B>slum</B><DD><P>
<DT><B>scale-lum</B><DD><P>
<DT><B>see</B><DD><P>
<DT><B>show</B><DD><P>
<DT><B>showbox</B><DD><P>
<DT><B>hide</B><DD><P>
<DT><B>hidebox</B><DD><P>
<DT><B>box</B><DD><P>
<DT><B>boxes</B><DD><P>
<DT><B>boxlabel</B><DD><P>
<DT><B>boxaxes</B><DD><P>
<DT><B>boxscale</B><DD><P>
<DT><B>go</B><DD><P>
<DT><B>gobox</B><DD><P>
<DT><B>goboxscale</B><DD><P>
<DT><B>psize</B><DD><P>
<DT><B>pointsize</B><DD><P>
<DT><B>polysize</B><DD><P>
<DT><B>polylum</B><DD><P>
<DT><B>polyminpixels</B><DD><P>
<DT><B>labelminpixels</B><DD><P>
<DT><B>labelsize</B><DD><P>
<DT><B>lsize</B><DD><P>
<DT><B>point</B><DD><P>
<DT><B>points</B><DD><P>
<DT><B>poly</B><DD><P>
<DT><B>polygon</B><DD><P>
<DT><B>texture [tx]</B><DD><P>
<DT><B>txscale BUG in 'tx' name?</B><DD><P>
<DT><B>polyorivar</B><DD><P>
<DT><B>texturevar</B><DD><P>
<DT><B>label labels</B><DD><P>
<DT><B>laxes</B><DD><P>
<DT><B>polyside</B><DD><P>
<DT><B>gamma</B><DD><P>
<DT><B>alpha</B><DD><P>
<DT><B>fast</B><DD><P>
<DT><B>fog</B><DD><P>
<DT><B>menu fmenu</B><DD><P>
<P>
<P>BEGIN CAVEMENU
pos P1 P2
wall P1
hid [P1]
show [P1]
h [P1]
demandfps [P1]
font
help
?
END CAVEMENU
<P>
<P>
<DT><B>datascale</B><DD><P>
<DT><B>where [w]</B><DD><P>
</DL>
<P>
<P>
<HR>
<A HREF="partiview-7.html">Next</A>
<A HREF="partiview-5.html">Previous</A>
<A HREF="partiview.html#toc6">Contents</A>
</BODY>
</HTML>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE> Partiview (PC-VirDir): Data commands</TITLE>
<LINK HREF="partiview-8.html" REL=next>
<LINK HREF="partiview-6.html" REL=previous>
<LINK HREF="partiview.html#toc7" REL=contents>
</HEAD>
<BODY>
<A HREF="partiview-8.html">Next</A>
<A HREF="partiview-6.html">Previous</A>
<A HREF="partiview.html#toc7">Contents</A>
<HR>
<H2><A NAME="s7">7. Data commands</A></H2>
<P>
<P>(see also partibrains.c::specks_read)
<P>lines starting with <CODE>#</CODE> will be skipped. The following commands can be placed in
a data file, as opposed to a VIRDIR command;
<P>
<P>
<DL>
<P>
<DT><B>
read <I>file</I> </B><DD><P>
<DT><B>
include <I>file</I></B><DD><P>read a <CODE>speck</CODE> formatted file.
<P>
<P>
<DT><B>ieee <I>file</I></B><DD><P>read a IEEEIO formatted file. Support for this must be explicitly
compiled into the program.
<P>
<DT><B>object</B><DD><P>parti_object()
<P>
<DT><B>sdb <I>file</I></B><DD><P>read an SDB (binary) formatted file.
<P>
<DT><B>sdbvars <I>var</I></B><DD><P>Select <I>var</I> (any of: <CODE>mMcrogtxyzSn</CODE>)
<P>