Converting to polar3d.h routines.
This commit is contained in:
parent
af753f2679
commit
4b4aef9d3a
8 changed files with 48 additions and 34 deletions
|
@ -344,8 +344,8 @@ INCLUDES += -I$(top_builddir) -I$(top_builddir)/Lib
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.8 1998/04/28 01:24:01 curt
|
# Revision 1.9 1998/05/02 01:54:24 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.2 1998/04/14 02:25:59 curt
|
# Revision 1.2 1998/04/14 02:25:59 curt
|
||||||
# Code reorganizations. Added a Lib/ directory for more general libraries.
|
# Code reorganizations. Added a Lib/ directory for more general libraries.
|
||||||
|
|
|
@ -343,8 +343,8 @@ INCLUDES +=
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.6 1998/04/28 01:24:08 curt
|
# Revision 1.7 1998/05/02 01:54:34 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.2 1998/04/24 00:44:04 curt
|
# Revision 1.2 1998/04/24 00:44:04 curt
|
||||||
# Added zlib support.
|
# Added zlib support.
|
||||||
|
|
|
@ -371,8 +371,8 @@ INCLUDES += -I$(top_builddir) -I$(top_builddir)/Lib
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.8 1998/04/28 01:24:10 curt
|
# Revision 1.9 1998/05/02 01:54:35 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.3 1998/04/18 04:02:54 curt
|
# Revision 1.3 1998/04/18 04:02:54 curt
|
||||||
# Added zlib support in placed and other misc. tweaks.
|
# Added zlib support in placed and other misc. tweaks.
|
||||||
|
|
|
@ -347,8 +347,8 @@ INCLUDES += -I$(top_builddir) -I$(top_builddir)/Lib
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.8 1998/04/28 01:24:12 curt
|
# Revision 1.9 1998/05/02 01:54:36 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.4 1998/04/24 00:44:05 curt
|
# Revision 1.4 1998/04/24 00:44:05 curt
|
||||||
# Added zlib support.
|
# Added zlib support.
|
||||||
|
|
|
@ -349,8 +349,8 @@ INCLUDES += -I$(top_builddir) -I$(top_builddir)/Lib
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.8 1998/04/28 01:24:14 curt
|
# Revision 1.9 1998/05/02 01:54:36 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.4 1998/04/24 00:44:06 curt
|
# Revision 1.4 1998/04/24 00:44:06 curt
|
||||||
# Added zlib support.
|
# Added zlib support.
|
||||||
|
|
|
@ -40,7 +40,7 @@
|
||||||
|
|
||||||
#include <Math/fg_geodesy.h>
|
#include <Math/fg_geodesy.h>
|
||||||
#include <Math/mat3.h>
|
#include <Math/mat3.h>
|
||||||
#include <Math/polar.h>
|
#include <Math/polar3d.h>
|
||||||
|
|
||||||
int nodecount, tricount;
|
int nodecount, tricount;
|
||||||
double xmin, xmax, ymin, ymax;
|
double xmin, xmax, ymin, ymax;
|
||||||
|
@ -49,15 +49,16 @@ static double nodes_orig[MAX_NODES][3];
|
||||||
static int tris[MAX_TRIS][3];
|
static int tris[MAX_TRIS][3];
|
||||||
/* static int new_tris[MAX_TRIS][3]; */
|
/* static int new_tris[MAX_TRIS][3]; */
|
||||||
|
|
||||||
static struct fgCartesianPoint nodes_cart[MAX_NODES];
|
static fgCartesianPoint3d nodes_cart[MAX_NODES];
|
||||||
|
|
||||||
struct fgBUCKET ne_index, nw_index, sw_index, se_index;
|
struct fgBUCKET ne_index, nw_index, sw_index, se_index;
|
||||||
struct fgBUCKET north_index, south_index, east_index, west_index;
|
struct fgBUCKET north_index, south_index, east_index, west_index;
|
||||||
|
|
||||||
/* convert a geodetic point lon(arcsec), lat(arcsec), elev(meter) to
|
/* convert a geodetic point lon(arcsec), lat(arcsec), elev(meter) to
|
||||||
* a cartesian point */
|
* a cartesian point */
|
||||||
struct fgCartesianPoint geod_to_cart(double geod[3]) {
|
fgCartesianPoint3d geod_to_cart(double geod[3]) {
|
||||||
struct fgCartesianPoint p;
|
fgCartesianPoint3d cp;
|
||||||
|
fgPolarPoint3d pp;
|
||||||
double gc_lon, gc_lat, sl_radius;
|
double gc_lon, gc_lat, sl_radius;
|
||||||
|
|
||||||
/* printf("A geodetic point is (%.2f, %.2f, %.2f)\n",
|
/* printf("A geodetic point is (%.2f, %.2f, %.2f)\n",
|
||||||
|
@ -69,17 +70,20 @@ struct fgCartesianPoint geod_to_cart(double geod[3]) {
|
||||||
/* printf("A geocentric point is (%.2f, %.2f, %.2f)\n", gc_lon,
|
/* printf("A geocentric point is (%.2f, %.2f, %.2f)\n", gc_lon,
|
||||||
gc_lat, sl_radius+geod[2]); */
|
gc_lat, sl_radius+geod[2]); */
|
||||||
|
|
||||||
p = fgPolarToCart(gc_lon, gc_lat, sl_radius+geod[2]);
|
pp.lon = gc_lon;
|
||||||
|
pp.lat = gc_lat;
|
||||||
|
pp.radius = sl_radius+geod[2];
|
||||||
|
cp = fgPolarToCart3d(pp);
|
||||||
|
|
||||||
/* printf("A cart point is (%.8f, %.8f, %.8f)\n", p.x, p.y, p.z); */
|
/* printf("A cart point is (%.8f, %.8f, %.8f)\n", cp.x, cp.y, cp.z); */
|
||||||
|
|
||||||
return(p);
|
return(cp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* given three points defining a triangle, calculate the normal */
|
/* given three points defining a triangle, calculate the normal */
|
||||||
void calc_normal(struct fgCartesianPoint p1, struct fgCartesianPoint p2,
|
void calc_normal(fgCartesianPoint3d p1, fgCartesianPoint3d p2,
|
||||||
struct fgCartesianPoint p3, double normal[3])
|
fgCartesianPoint3d p3, double normal[3])
|
||||||
{
|
{
|
||||||
double v1[3], v2[3];
|
double v1[3], v2[3];
|
||||||
double temp;
|
double temp;
|
||||||
|
@ -612,9 +616,12 @@ int main(int argc, char **argv) {
|
||||||
|
|
||||||
|
|
||||||
/* $Log$
|
/* $Log$
|
||||||
/* Revision 1.9 1998/04/18 04:01:20 curt
|
/* Revision 1.10 1998/05/02 01:54:37 curt
|
||||||
/* Now use libMath rather than having local copies of math routines.
|
/* Converting to polar3d.h routines.
|
||||||
/*
|
/*
|
||||||
|
* Revision 1.9 1998/04/18 04:01:20 curt
|
||||||
|
* Now use libMath rather than having local copies of math routines.
|
||||||
|
*
|
||||||
* Revision 1.8 1998/04/14 02:26:08 curt
|
* Revision 1.8 1998/04/14 02:26:08 curt
|
||||||
* Code reorganizations. Added a Lib/ directory for more general libraries.
|
* Code reorganizations. Added a Lib/ directory for more general libraries.
|
||||||
*
|
*
|
||||||
|
|
|
@ -349,8 +349,8 @@ INCLUDES += -I$(top_builddir) -I$(top_builddir)/Lib
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# $Log$
|
# $Log$
|
||||||
# Revision 1.8 1998/04/28 01:24:16 curt
|
# Revision 1.9 1998/05/02 01:54:38 curt
|
||||||
# Updates ...
|
# Converting to polar3d.h routines.
|
||||||
#
|
#
|
||||||
# Revision 1.4 1998/04/24 00:44:07 curt
|
# Revision 1.4 1998/04/24 00:44:07 curt
|
||||||
# Added zlib support.
|
# Added zlib support.
|
||||||
|
|
|
@ -38,12 +38,12 @@
|
||||||
|
|
||||||
#include <Math/fg_geodesy.h>
|
#include <Math/fg_geodesy.h>
|
||||||
#include <Math/mat3.h>
|
#include <Math/mat3.h>
|
||||||
#include <Math/polar.h>
|
#include <Math/polar3d.h>
|
||||||
|
|
||||||
|
|
||||||
int nodecount, tricount;
|
int nodecount, tricount;
|
||||||
int normalcount = 0;
|
int normalcount = 0;
|
||||||
static struct fgCartesianPoint nodes[MAX_NODES];
|
static fgCartesianPoint3d nodes[MAX_NODES];
|
||||||
static int tris[MAX_TRIS][3];
|
static int tris[MAX_TRIS][3];
|
||||||
|
|
||||||
static double normals[MAX_NODES][3];
|
static double normals[MAX_NODES][3];
|
||||||
|
@ -54,8 +54,9 @@ struct fgBUCKET north_index, south_index, east_index, west_index;
|
||||||
|
|
||||||
/* convert a geodetic point lon(arcsec), lat(arcsec), elev(meter) to
|
/* convert a geodetic point lon(arcsec), lat(arcsec), elev(meter) to
|
||||||
* a cartesian point */
|
* a cartesian point */
|
||||||
struct fgCartesianPoint geod_to_cart(double geod[3]) {
|
fgCartesianPoint3d geod_to_cart(double geod[3]) {
|
||||||
struct fgCartesianPoint p;
|
fgCartesianPoint3d cp;
|
||||||
|
fgPolarPoint3d pp;
|
||||||
double gc_lon, gc_lat, sl_radius;
|
double gc_lon, gc_lat, sl_radius;
|
||||||
|
|
||||||
/* printf("A geodetic point is (%.2f, %.2f, %.2f)\n",
|
/* printf("A geodetic point is (%.2f, %.2f, %.2f)\n",
|
||||||
|
@ -67,17 +68,20 @@ struct fgCartesianPoint geod_to_cart(double geod[3]) {
|
||||||
/* printf("A geocentric point is (%.2f, %.2f, %.2f)\n", gc_lon,
|
/* printf("A geocentric point is (%.2f, %.2f, %.2f)\n", gc_lon,
|
||||||
gc_lat, sl_radius+geod[2]); */
|
gc_lat, sl_radius+geod[2]); */
|
||||||
|
|
||||||
p = fgPolarToCart(gc_lon, gc_lat, sl_radius+geod[2]);
|
pp.lon = gc_lon;
|
||||||
|
pp.lat = gc_lat;
|
||||||
|
pp.radius = sl_radius+geod[2];
|
||||||
|
cp = fgPolarToCart3d(pp);
|
||||||
|
|
||||||
/* printf("A cart point is (%.8f, %.8f, %.8f)\n", p.x, p.y, p.z); */
|
/* printf("A cart point is (%.8f, %.8f, %.8f)\n", cp.x, cp.y, cp.z); */
|
||||||
|
|
||||||
return(p);
|
return(cp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* given three points defining a triangle, calculate the normal */
|
/* given three points defining a triangle, calculate the normal */
|
||||||
void calc_normal(struct fgCartesianPoint p1, struct fgCartesianPoint p2,
|
void calc_normal(fgCartesianPoint3d p1, fgCartesianPoint3d p2,
|
||||||
struct fgCartesianPoint p3, double normal[3])
|
fgCartesianPoint3d p3, double normal[3])
|
||||||
{
|
{
|
||||||
double v1[3], v2[3];
|
double v1[3], v2[3];
|
||||||
double temp;
|
double temp;
|
||||||
|
@ -640,9 +644,12 @@ int main(int argc, char **argv) {
|
||||||
|
|
||||||
|
|
||||||
/* $Log$
|
/* $Log$
|
||||||
/* Revision 1.14 1998/04/18 04:01:32 curt
|
/* Revision 1.15 1998/05/02 01:54:39 curt
|
||||||
/* Now use libMath rather than having local copies of math routines.
|
/* Converting to polar3d.h routines.
|
||||||
/*
|
/*
|
||||||
|
* Revision 1.14 1998/04/18 04:01:32 curt
|
||||||
|
* Now use libMath rather than having local copies of math routines.
|
||||||
|
*
|
||||||
* Revision 1.13 1998/04/14 02:26:11 curt
|
* Revision 1.13 1998/04/14 02:26:11 curt
|
||||||
* Code reorganizations. Added a Lib/ directory for more general libraries.
|
* Code reorganizations. Added a Lib/ directory for more general libraries.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in a new issue