From 99a937d9c3ced067bd5fe698be9590b0f8dfbdb0 Mon Sep 17 00:00:00 2001 From: curt Date: Sun, 14 Feb 1999 19:10:47 +0000 Subject: [PATCH] Initial revisions. --- Astro/Stars.info | 140 +++++++++++++++++++++++++++++ Astro/Stars.tex | 207 ++++++++++++++++++++++++++++++++++++++++++ Sky/Sky.tex | 228 +++++++++++++++++++++++++++++++++++++++++++++++ Sky/dome.fig | 47 ++++++++++ Sky/earth.fig | 44 +++++++++ Sky/local.fig | 45 ++++++++++ 6 files changed, 711 insertions(+) create mode 100644 Astro/Stars.info create mode 100644 Astro/Stars.tex create mode 100644 Sky/Sky.tex create mode 100644 Sky/dome.fig create mode 100644 Sky/earth.fig create mode 100644 Sky/local.fig diff --git a/Astro/Stars.info b/Astro/Stars.info new file mode 100644 index 000000000..9ab48f5ba --- /dev/null +++ b/Astro/Stars.info @@ -0,0 +1,140 @@ +============================================================================= + + +A basic set of bright stars -- taken from the xephem program. + +Based on the 5th Revised edition of the Yale Bright Star Catalog, 1991, from +ftp://adc.gsfc.nasa.gov/pub/adc/archives/catalogs/5/5050. + +Only those entries with a Bayer and/or Flamsteed number are retained +here. + +Format: Constellation BayerN-Flamsteed, as available. Bayer is + truncated as requried to enforce a maximum total length of 13 + imposed within xephem. + +Common names were then overlayed by closest position match from +hand-edited a list supplied by Robert Tidd (inp@violet.berkeley.edu) +and Alan Paeth (awpaeth@watcgl.waterloo.edu) + + +============================================================================= + + +Data file format: + +name , right assention (radians) , declination (radians) , magnitude (0.0 - 1.0) + + +============================================================================= + + +The following information is taken from: + + http://www.lclark.edu/~wstone/skytour/celest.html + +Please visit the above site, it contains much more complete information. + +CELESTIAL MEASUREMENTS + +RIGHT ASCENSION AND DECLINATION + +Although we know that the objects we see in the sky are of different +sizes and at different distances from us, it is convenient to +visualize all the objects as being attached to an imaginary sphere +surrounding the Earth. From our vantage point, the sky certainly looks +like a dome (the half of the celestial sphere above our local +horizon). The celestial sphere is mapped in Right Ascension (RA) and +Declination (Dec). Declination is the celestial equivalent of +latitude, and is simply the Earth's latitude lines projected onto the +celestial sphere. A star that can be directly overhead as seen from +the Earth's Equator (0 degrees latitude) is said to be on the +Celestial Equator, and has a declination of 0 degrees . The North +Star, Polaris, is very nearly overhead as seen from the North Pole (90 +degrees North latitude). The point directly over the North Pole on the +celestial sphere is called the North Celestial Pole, and has a +declination of +90 degrees . Northern declinations are given positive +signs, and southern declinations are given negative signs. So, the +South Celestial Pole has a declination of -90 degrees . + +Right Ascension is the equivalent of longitude, but since the Earth +rotates with respect to the celestial sphere we cannot simply use the +Greenwich Meridian as 0 degrees RA. Instead, we set the zero point as +the place on the celestial sphere where the Sun crosses the Celestial +Equator (0 degrees Dec) at the vernal (spring) equinox. The arc of +the celestial sphere from the North Celestial Pole through this point +to the South Celestial Pole is designated as Zero hours RA. Right +Ascension increases eastward, and the sky is divided up into 24 +hours. This designation is convenient because it represents the +sidereal day, the time it takes for the Earth to make one rotation +relative to the celestial sphere. If you pointed a telescope (with no +motor drive) at the coordinates (RA=0h, Dec=0 degrees ), and came back +one hour later, the telescope would then be pointing at (RA=1h, Dec=0 +degrees ). Because the Earth's revolution around the Sun also +contributes to the apparent motion of the stars, the day we keep time +by (the solar day) is about four minutes longer than the sidereal +day. So, if you pointed a telescope at (RA=0h, Dec=0 degrees ) and +came back 24 hours later, the telescope would now be pointing at +(RA=0h 4m, Dec=0 degrees). A consequence is that the fixed stars +appear to rise about four minutes earlier each day. + + +============================================================================= + + +From: steve@mred.bgm.link.com (Steve Baker) +Subject: Re: FG: Fun in the sun ... +Date: Tue, 5 Aug 97 15:37:27 -0500 + +You probably ought to get the stars right too - there is a database +of the 300 brightest stars in the 'Yale Bright Star Catalog' - which +I enclose below. I'd guess that you could navigate by the stars - +so this might not be a completely useless feature - right? + +Anyway, if all else fails - and the flight sim never gets going - we +could at least sell this as a planetarium :-) + +The format of the star data is: + +Name Right-Ascension Declination Magnitude + +(Ascension and Declination are in radians) + +We took the magnitude value, scaled it by 0.8 and added 0.2 to make +a 0->1 brightness value. Using the raw data created too many very +dark stars. + +Originally, there were constellation names as sub-headings - but I +think I deleted them to make the file easier to parse :-) That makes +the 'name' field pretty pointless. + +if you are still talking about the geocentric coordinate system +where the terrain is modelled with Z pointing towards the North +pole, X out of the 0 degree meridian at the equator and Y out at the +Indian ocean at the equator - then you can position the stars using: + + star[ X ] = fsin ( ra ) * fcos( decl ) ; + star[ Y ] = fcos ( ra ) * fcos( decl ) ; + star[ Z ] = fsin ( decl ) ; + +(which you can precompute at startup) + +...and then rotate them about the Z axis using GMT*two_pi/24.0 +# +Put them all in a display list - use GL_POINTS as the primitive... + + glNewList ( ...whatever... ) + glBegin ( GL_POINTS ) ; + + for ( int i = 0 ; i < num_stars ; i++ ) { + glColor3f ( star_brightness[i], star_brightness[i], star_brightness[i] ) ; + glVertex3f ( star_x[i], star_y[i], star_z[i] ) ; + } + + glEnd () ; + glEndList () ; + +You need to draw them out by the far clip plane so they don't occult +anything. Then you need to translate them using the same x/y/z as +the eyepoint so that you can never fly any closer to them. + diff --git a/Astro/Stars.tex b/Astro/Stars.tex new file mode 100644 index 000000000..5d642157f --- /dev/null +++ b/Astro/Stars.tex @@ -0,0 +1,207 @@ +% +% `Stars.tex' -- describes our procedure for drawing stars +% +% Written by Curtis Olson. Started December, 1997. +% +% $Id$ +%------------------------------------------------------------------------ + + +\documentclass[12pt]{article} + +\usepackage{anysize} +\papersize{11in}{8.5in} +\marginsize{1in}{1in}{1in}{1in} + +\usepackage{amsmath} + +\usepackage{epsfig} + +\usepackage{setspace} +\onehalfspacing + +\usepackage{url} + + +\begin{document} + + +\title{ + Flight Gear Stars Representation and Rendering. +} + + +\author{ + Curtis L. Olson\\ + (\texttt{curt@me.umn.edu}) +} + + +\maketitle + + +\section{Introduction} + +Flight Gear attempts to render the top several hundred stars in the +correct position in the sky for the current time and position as will +as rendering these stars with the correct ``magnitude''. + +This document will give a quick overview of our approach. + +\section{Resources} + +\subsubsection{XEphem} + +The set of bright stars was extracted from the xephem program. For a +full list of features and the latest news, please see the xephem home +page at \url{http://iraf.noao.edu/~ecdowney/xephem.html}. The XEphem +star list was itself taken from the Yale Bright Star Catalog. + +\begin{quote} + Based on the 5th Revised edition of the Yale Bright Star Catalog, + 1991, from ftp://adc.gsfc.nasa.gov/pub/adc/archives/catalogs/5/5050. + + Only those entries with a Bayer and/or Flamsteed number are retained + here. + + Format: Constellation BayerN-Flamsteed, as available. Bayer is + truncated as required to enforce a maximum total length of 13 + imposed within xephem. + + Common names were then overlayed by closest position match from + hand-edited a list supplied by Robert Tidd (inp@violet.berkeley.edu) + and Alan Paeth (awpaeth@watcgl.waterloo.edu) +\end{quote} + +The author of XEphem, Elwood Downey (ecdowney@noao.edu), was very +instrumental in helping me understand sidereal time, accurate star +placement, and even contributed some really hairy sections of code. +Thanks Elwood! + + +\section{Terminology and Definitions} + +The following information is repeated verbatim from +\url{http://www.lclark.edu/~wstone/skytour/celest.html}: If you are +interested in these sorts of things I urge you to visit this site. It +contains much more complete information. + +\subsection{Celestial Measurements} + +Although we know that the objects we see in the sky are of different +sizes and at different distances from us, it is convenient to +visualize all the objects as being attached to an imaginary sphere +surrounding the Earth. From our vantage point, the sky certainly +looks like a dome (the half of the celestial sphere above our local +horizon). The celestial sphere is mapped in Right Ascension (RA) and +Declination (Dec). + +\subsubsection{Declination} + +Declination is the celestial equivalent of latitude, and is simply the +Earth's latitude lines projected onto the celestial sphere. A star +that can be directly overhead as seen from the Earth's Equator (0 +degrees latitude) is said to be on the Celestial Equator, and has a +declination of 0 degrees . The North Star, Polaris, is very nearly +overhead as seen from the North Pole (90 degrees North latitude). The +point directly over the North Pole on the celestial sphere is called +the North Celestial Pole, and has a declination of +90 degrees . +Northern declinations are given positive signs, and southern +declinations are given negative signs. So, the South Celestial Pole +has a declination of -90 degrees . + +\subsubsection{Right Ascension \& Sidereal Time} + +Right Ascension is the equivalent of longitude, but since the Earth +rotates with respect to the celestial sphere we cannot simply use the +Greenwich Meridian as 0 degrees RA. Instead, we set the zero point as +the place on the celestial sphere where the Sun crosses the Celestial +Equator (0 degrees Dec) at the vernal (spring) equinox. The arc of +the celestial sphere from the North Celestial Pole through this point +to the South Celestial Pole is designated as Zero hours RA. Right +Ascension increases eastward, and the sky is divided up into 24 +hours. This designation is convenient because it represents the +sidereal day, the time it takes for the Earth to make one rotation +relative to the celestial sphere. If you pointed a telescope (with no +motor drive) at the coordinates (RA=0h, Dec=0 degrees ), and came back +one hour later, the telescope would then be pointing at (RA=1h, Dec=0 +degrees ). Because the Earth's revolution around the Sun also +contributes to the apparent motion of the stars, the day we keep time +by (the solar day) is about four minutes longer than the sidereal +day. So, if you pointed a telescope at (RA=0h, Dec=0 degrees ) and +came back 24 hours later, the telescope would now be pointing at +(RA=0h 4m, Dec=0 degrees). A consequence is that the fixed stars +appear to rise about four minutes earlier each day. + + +\subsection{Implementation} + +Here is a brief overview of how stars were implemented in Flight Gear. +The right ascension and declination of each star is used to build a +structure of point objects to represent the stars. The magnitude is +mapped into a color on the gray/white continuum. The points are +positioned just inside the far clip plane. When rendering the stars, +this structure (display list) is rotated about the $Z$ axis by the +current sidereal time and translated to the current view point. + +\subsubsection{Data file format} + +The star information is stored in a simple data file called +``Stars.dat'' with the following comma delimited format: name, right +ascension(radians), declination(radians), magnitude(smaller is +brighter). Here is an extract of the data file: + +\begin{verbatim} +Sirius,1.767793,-0.266754,-1.460000 +Canopus,1.675305,-0.895427,-0.720000 +Arcturus,3.733528,0.334798,-0.040000 +Rigil Kentaurus,3.837972,-1.032619,-0.010000 +Vega,4.873563,0.676902,0.030000 +Capella,1.381821,0.802818,0.080000 +Rigel,1.372432,-0.136107,0.120000 +Procyon,2.004082,0.091193,0.380000 +Achernar,0.426362,-0.990707,0.460000 +\end{verbatim} + +\subsubsection{Building the display list} + +The display list is built up from a collection of point objects as the +star data file is loaded. For each star, the magnitude is mapped into +a brightness value from 0.0 to 1.0 with 1.0 being the brightest. Our +coordinate system is described in the coordinate system document: Z +points towards the North pole, X out of the 0 degree meridian at the +equator, and Y out at the Indian ocean at the equator. Given this +coordinate system, the position of each star at 0:00H sidereal time is +calculated as follows: + +\begin{align} +x &= \mathrm{distance} * \cos(\mathrm{rightascension}) * + \cos(\mathrm{declination}) \\ +y &= \mathrm{distance} * \sin(\mathrm{rightascension}) * + \cos(\mathrm{declination}) \\ +z &= \mathrm{distance} * \sin(\mathrm{declination}) +\end{align} + +\subsubsection{Transformations and Rendering} + +The tricky part about rendering the stars is calculating sidereal time +correctly. Here's where Elwood Downey saved my butt. 0:00H sidereal +time aligns with 12:00 noon GMT time on March 21 of every year. After +that they diverge by about 4 minutes per day. The solar day is +approximately 4 minutes longer than the side real day. Once you know +the proper sidereal time, you simply translate the center of the star +structure to the current view point, then rotate this structure about +the Z axis by the current sidereal time. + +The stars are drawn out by the far clip plane so they don't occult +anything. They are translated using the same x/y/z as the eye point +so that you can never fly any closer to them. + +\end{document} + + +%------------------------------------------------------------------------ +% $Log$ +% Revision 1.1 1999/02/14 19:10:47 curt +% Initial revisions. +% diff --git a/Sky/Sky.tex b/Sky/Sky.tex new file mode 100644 index 000000000..f8e0b5ede --- /dev/null +++ b/Sky/Sky.tex @@ -0,0 +1,228 @@ +% +% `Sky.tex' -- describes the sky rendering procedure +% +% Written by Curtis Olson. Started December, 1997. +% +% $Id$ +%------------------------------------------------------------------------ + + +\documentclass[12pt]{article} + +\usepackage{anysize} +\papersize{11in}{8.5in} +\marginsize{1in}{1in}{1in}{1in} + +\usepackage{amsmath} + +\usepackage{epsfig} + +\usepackage{setspace} +\onehalfspacing + +\usepackage{url} + + +\begin{document} + + +\title{ + Flight Gear Sky Representation and Rendering. +} + + +\author{ + Curtis L. Olson\\ + (\texttt{curt@me.umn.edu}) +} + + +\maketitle + + +\section{Introduction} + +No flight simulator should be without a nice sky that smoothly +transitions into haze at the horizon. Such a sky should also be able +to render sunrise and sunset effects. This document describes how we +have implemented such a sky. + +\section{Overview} + +The sky is represent as a 12 sided dome (or upside down bowl if you +prefer.) Figure \ref{fig:dome} shows how a 6 sided dome might be +constructed. + +\begin{figure}[hbt] + \centerline{ + \psfig{file=dome.eps} + } + \caption{Simplified (6 Sided) Sky Dome} + \label{fig:dome} +\end{figure} + +The center section can be constructed with a triangle fan. The inner +and outer ``skirts'' can be constructed with triangle strips. + +The colors of each vertex can be independently controlled to achieve +sky to haze transitions, sunrise/sunset effects with a pinkish/oranges +glow, and one side of the sky can easily be made brighter than the +other. By enabling smooth shading in OpenGL, the colors will be +blended together for a very nice effect. + + +\section{Implementation} + +This sections describes how the sky has been implemented in OpenGL. + +\subsection{Vertex Generation} + +The sky dome structure is intended to be centered over the current +view point at sea level. This way we could paste cloud textures on +the dome if we liked. So, we simply have to generate vertices for a +fixed dome, and then use OpenGL calls to transform and rotate it to +the desired place. Please refer to the actual code +(.../Src/Scenery/sky.c) for specifics, but +to generate the vertices we simply create a 12 element array for the +inner set of vertices, another 12 element array for the middle set of +vertices and a last 12 element array for the outer set of vertices. + +\subsection{Vertex Coloring} + +For each vertex position array, there is a corresponding vertex color +array. This way we don't have to compute each vertex color every +iteration. Also, by being able to individually control the color at +each vertex, we can do all sorts of nice sky to haze blending with +dusk and dawn effects. Again, please refer to the source +(.../Src/Scenery/sky.c) for specific details on how the coloring is +implemented. However, here's the quick overview. + +\subsubsection{Day and Night Coloring} + +For the general middle of the day, or middle of the night sky, we +already know the desired sky color, and the haze color. This is +computed elsewhere based on the current sun position. During the +night these colors are both nearly black. During the dawn they are +smoothly transitioned to day time colors. And, during the dusk they +are smoothly transitioned back to night time colors. + +The center of the dome is assigned the current sky color. The color +of the first inner ring of vertices is weighted 70\% towards the sky +color and 30\% towards the fog color. + +Then color of the middle ring of vertices is weighted 10\% towards the +sky color and 90\% towards the fog color. + +The the outer ring of vertices are assigned the current fog color. + +\subsubsection{Dusk and Dawn Effects} + +Dusk and dawn effects can be accomplished by controlling the color of +the vertices. Rather than trying to figure out which vertices are +near the current sun position, I just rotate the dome so the 0'th +vertex of each ring (and the center fan) align with the sun. This +makes it easier to calculate vertex colors. But, there is a fair +amount of work involved in calculating the proper dome rotation. + +\begin{figure}[hbt] + \centerline{ + \psfig{file=earth.eps} + } + \caption{Overview of Earth} + \label{fig:earth} +\end{figure} + +Figure \ref{fig:earth} shows an overview of the setup. $P$, the +current view position, and $\mathbf{n}$, the local ``up'' vector, +define the plane which is tangent to the Earth's surface at point $P$. +Just for a quick review of your linear algebra, given $\mathbf{v_0}$, +the position vector of $P$ and $\mathbf{v}$, the position vector of +some other arbitrary point on the plane, and $\mathbf{n}$, the normal +to the plane, then the vector $\mathbf{n}$ and the vector $(\mathbf{v} +- \mathbf{v_0})$ are orthogonal (perpendicular.) If the two vectors +are orthogonal then their dot product will be zero, so the following +must be true: + +\begin{equation} + \mathbf{n} \cdot ( \mathbf{v} - \mathbf{v_0} ) = 0 +\end{equation} + +This is the vector equation of the plane and can be rewritten as: + +\begin{align} + a(x - x_0) + b(y - y_0) + c(z - z_0) &= 0 \\ + ax + by + cz - (\mathbf{n} \cdot \mathbf{v_0}) &= 0 +\end{align} + +We want to find a vector $\mathbf{v}$ representing the +direction along the current tangent plane towards the position on the +Earth where the Sun is directly overhead. The vector $\mathbf{u}$ is +defined as $\vec{\mathbf{PS}}$. + +\begin{figure}[hbt] + \centerline{ + \psfig{file=local.eps} + } + \caption{Vectors and Points in Local Coordinate System} + \label{fig:local} +\end{figure} + +Figure \ref{fig:local} shows a more detailed ``local'' view of the +points and vectors involved. The point, $P$, is the current view +point. The vector, $\mathbf{n}$, is the local up vector. $S$ +represents the current position on the Earth's surface where the Sun +is directly overhead. We want to find the vector, $\mathbf{v}$ which +is a projection of $\mathbf{u}$ onto the plane defined by $P$ and +$\mathbf{n}$. + +To do this we first calculate $\mathbf{u_1}$ which is the shortest +distance from point $S$ to the tangent plane. + +\begin{equation} + \mathbf{u_1} = \frac { \mathbf{n} \cdot \mathbf{u} } + { {\| \mathbf{n} \|}^2 } \mathbf{n} +\end{equation} + +Armed with $\mathbf{u_1}$ we can now calculate +$\mathbf{v}$ which is the local surface direction on the tangent +plane towards the sun, $S$. + +\begin{equation} + \mathbf{v} = \mathbf{v_0} + \mathbf{u} - \mathbf{u_1} +\end{equation} + +Ok, so now we have $\mathbf{v}$, but the fun doesn't stop here. Now +we need to calculate a rotation angle $\theta$ about $\mathbf{n}$ to +align our dome with $\mathbf{v}$. The origin of the dome always +aligns with a vector pointing directly South. So, we need to repeat +the above procedure to map a vector pointing straight down $( 0, 0, +-\mathbf{z} )$ onto our tangent plane to produce the local, surface, +south vector $\mathbf{w}$. We then take the $\arccos()$ of the dot product +of $\mathbf{v}$ with $\mathbf{w}$. + +\begin{equation} + \theta = \arccos( \mathbf{v} \cdot \mathbf{w} ) +\end{equation} + +Whew, that gives us the angle we want. Well almost, not quite. The +problem is that the dot product returns a number in the range of +$(-1.0 \ldots 1.0)$. Thus, the $\arccos()$ function returns a $\theta$ +in the range of $(0.0 \ldots 180.0)$. But this is not enough +information to determine if $\mathbf{v}$ is in the east hemisphere or +west hemisphere and if this angle should be positive or negative. + +So, to get that last piece of information we need, we can rotate the +vector $\mathbf{w}$ by 90 degrees about $\mathbf{n}$. This gives us +the local surface east vector on the tangent plane. Taking the dot +product of $\mathbf{v}$ and the local east vector tells us which +hemisphere $\mathbf{v}$ is in. And, from this, we can uniquely +determine the proper angle for the sky dome rotation. + +\end{document} + + +%------------------------------------------------------------------------ +% $Log$ +% Revision 1.1 1999/02/14 19:12:21 curt +% Initial revisions. +% diff --git a/Sky/dome.fig b/Sky/dome.fig new file mode 100644 index 000000000..aef865ca3 --- /dev/null +++ b/Sky/dome.fig @@ -0,0 +1,47 @@ +#FIG 3.2 +Portrait +Center +Inches +Letter +100.00 +Single +0 +1200 2 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 7 + 4800 2700 3375 3450 4050 4500 6600 4500 7725 3450 6750 2700 + 4800 2700 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 8 + 3375 3450 2700 4500 2400 5400 3300 7200 7500 7200 8700 5400 + 8400 4500 7725 3450 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 4 + 2700 4500 3450 5850 7200 5850 8400 4500 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 3 + 3300 7200 3450 5850 4050 4500 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 3 + 6600 4500 7200 5850 7500 7200 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 3375 3450 3450 5850 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 4050 4500 7200 5850 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 6600 4500 8400 4500 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 2700 4500 3300 7200 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 3450 5850 7500 7200 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 7200 5850 8700 5400 +2 1 2 1 0 7 0 0 -1 4.000 0 0 -1 0 0 4 + 2700 4500 4125 3600 7275 3600 8400 4500 +2 1 2 1 0 7 0 0 -1 4.000 0 0 -1 0 0 3 + 6750 2700 7275 3600 7350 4350 +2 1 0 1 0 7 0 0 -1 4.000 0 0 -1 0 0 3 + 4050 4500 5625 3075 6750 2700 +2 1 0 1 0 7 0 0 -1 4.000 0 0 -1 0 0 3 + 4800 2700 5625 3075 6600 4500 +2 1 2 1 0 7 0 0 -1 4.000 0 0 -1 0 0 4 + 2400 5400 4050 4350 7350 4350 8700 5400 +2 1 2 1 0 7 0 0 -1 4.000 0 0 -1 0 0 3 + 4050 4350 4125 3600 4800 2700 +2 1 0 1 0 7 0 0 -1 4.000 0 0 -1 0 0 3 + 3375 3450 5625 3075 7725 3450 diff --git a/Sky/earth.fig b/Sky/earth.fig new file mode 100644 index 000000000..fd19619ef --- /dev/null +++ b/Sky/earth.fig @@ -0,0 +1,44 @@ +#FIG 3.2 +Landscape +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +5 1 0 2 0 7 0 0 -1 0.000 0 1 0 0 4800.000 -4650.000 2400 4800 4800 5100 7200 4800 +5 1 0 2 0 7 0 0 -1 0.000 0 0 0 0 14250.000 4800.000 4800 7200 4500 4800 4800 2400 +5 1 2 1 0 7 0 0 -1 3.000 0 1 0 0 -4650.000 4800.000 4800 7200 5100 4800 4800 2400 +5 1 2 1 0 7 0 0 -1 3.000 0 0 0 0 4800.000 14250.000 2400 4800 4800 4500 7200 4800 +1 3 0 2 0 7 0 0 -1 0.000 1 0.0000 4800 4800 2400 2400 4800 4800 7200 4800 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 4800 4800 25 25 4800 4800 4820 4815 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 6300 4200 25 25 6300 4200 6320 4215 +2 1 2 1 0 7 0 0 -1 3.000 0 0 -1 0 0 2 + 4500 5100 5100 4500 +2 1 0 1 0 7 0 0 -1 4.000 0 0 -1 0 0 2 + 6600 5400 7800 4200 +2 1 2 1 0 7 0 0 -1 3.000 0 0 -1 0 0 2 + 2400 4800 7200 4800 +2 1 0 2 0 7 0 0 -1 6.000 0 0 -1 0 0 5 + 6600 4200 6600 6600 7800 5400 7800 3000 6600 4200 +2 1 0 1 0 7 0 0 -1 4.000 0 0 -1 0 0 2 + 7200 3600 7200 6000 +2 1 0 1 0 -1 0 0 20 4.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 7200 4800 6750 4200 +2 1 0 1 0 -1 0 0 20 4.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 7200 4800 6300 4200 +2 1 2 1 0 -1 0 0 20 3.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 6750 4200 6300 4200 +2 1 0 1 0 -1 0 0 20 4.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 7200 4800 8100 4800 +4 0 0 0 0 0 14 0.0000 4 105 105 8175 4875 n\001 +4 0 0 0 0 0 14 0.0000 4 150 120 7275 5025 P\001 +4 0 0 0 0 0 14 0.0000 4 105 105 6825 4200 v\001 +4 0 0 0 0 0 14 0.0000 4 195 645 5625 4275 S (Sun)\001 +4 0 0 0 0 0 14 0.0000 4 105 105 6375 4500 u\001 +4 0 0 0 0 0 14 0.0000 4 195 525 4800 5025 Origin\001 diff --git a/Sky/local.fig b/Sky/local.fig new file mode 100644 index 000000000..1e5182924 --- /dev/null +++ b/Sky/local.fig @@ -0,0 +1,45 @@ +#FIG 3.2 +Landscape +Center +Inches +Letter +100.00 +Single +-2 +1200 2 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 4500 8700 21 21 4500 8700 4515 8715 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 6900 8100 21 21 6900 8100 6915 8115 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 6900 6600 21 21 6900 6600 6915 6615 +1 3 0 1 0 -1 0 0 20 0.000 1 0.0000 5700 6000 21 21 5700 6000 5715 6015 +2 1 0 2 0 7 0 0 -1 0.000 0 0 -1 0 0 5 + 1800 7200 4200 4800 9600 4800 7200 7200 1800 7200 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 4500 7200 6900 4800 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 0 0 2 + 3000 6000 8400 6000 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 5700 6000 5700 4200 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 5700 6000 6900 8100 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 5700 6000 6900 6600 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2 + 0 0 1.00 60.00 120.00 + 6900 6600 6900 8100 +2 1 0 1 0 7 0 0 -1 0.000 0 0 -1 1 0 2 + 1 1 1.00 60.00 120.00 + 4500 8700 5686 5994 +4 0 0 0 0 0 14 0.0000 4 105 105 6825 6450 v\001 +4 0 0 0 0 0 14 0.0000 4 195 645 6750 8325 S (Sun)\001 +4 0 0 0 0 0 14 0.0000 4 105 105 6975 7500 u\001 +4 0 0 0 0 0 10 0.0000 4 105 75 7080 7568 1\001 +4 0 0 0 0 0 14 0.0000 4 195 525 4200 8925 Origin\001 +4 0 0 0 0 0 14 0.0000 4 150 120 5475 5850 P\001 +4 0 0 0 0 0 10 0.0000 4 105 75 5550 5925 0\001 +4 0 0 0 0 0 14 0.0000 4 105 105 5625 6375 v\001 +4 0 0 0 0 0 10 0.0000 4 105 75 5700 6450 0\001 +4 0 0 0 0 0 14 0.0000 4 105 105 6450 7725 u\001 +4 0 0 0 0 0 14 0.0000 4 105 105 5625 4125 n\001 -- 2.39.5