X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=Math%2Fvector.cxx;h=8244c12199079638858915f9389ff011a79ca486;hb=bac27f1ce30eb6e517f0c55b36d3f8a9f9a04975;hp=641c056e7fe5bf7b3bbc6564129503c410322d59;hpb=c5adb85741158b1d46eb630ec1d6dbd967248c52;p=simgear.git diff --git a/Math/vector.cxx b/Math/vector.cxx index 641c056e..8244c121 100644 --- a/Math/vector.cxx +++ b/Math/vector.cxx @@ -1,27 +1,25 @@ -/************************************************************************** - * vector.c -- additional vector routines - * - * Written by Curtis Olson, started December 1997. - * - * Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of the - * License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - * - * $Id$ - * (Log is kept at end of this file) - **************************************************************************/ +// vector.cxx -- additional vector routines +// +// Written by Curtis Olson, started December 1997. +// +// Copyright (C) 1997 Curtis L. Olson - curt@infoplane.com +// +// This program is free software; you can redistribute it and/or +// modify it under the terms of the GNU General Public License as +// published by the Free Software Foundation; either version 2 of the +// License, or (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, but +// WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +// +// $Id$ +// (Log is kept at end of this file) #include @@ -35,18 +33,18 @@ #if !defined( USE_XTRA_MAT3_INLINES ) -/* Map a vector onto the plane specified by normal */ +// Map a vector onto the plane specified by normal void map_vec_onto_cur_surface_plane(MAT3vec normal, MAT3vec v0, MAT3vec vec, MAT3vec result) { MAT3vec u1, v, tmp; - /* calculate a vector "u1" representing the shortest distance from - * the plane specified by normal and v0 to a point specified by - * "vec". "u1" represents both the direction and magnitude of - * this desired distance. */ + // calculate a vector "u1" representing the shortest distance from + // the plane specified by normal and v0 to a point specified by + // "vec". "u1" represents both the direction and magnitude of + // this desired distance. - /* u1 = ( (normal vec) / (normal normal) ) * normal */ + // u1 = ( (normal vec) / (normal normal) ) * normal MAT3_SCALE_VEC( u1, normal, @@ -55,29 +53,27 @@ void map_vec_onto_cur_surface_plane(MAT3vec normal, MAT3vec v0, MAT3vec vec, ) ); - /* - printf(" vec = %.2f, %.2f, %.2f\n", vec[0], vec[1], vec[2]); - printf(" v0 = %.2f, %.2f, %.2f\n", v0[0], v0[1], v0[2]); - printf(" u1 = %.2f, %.2f, %.2f\n", u1[0], u1[1], u1[2]); - */ + // printf(" vec = %.2f, %.2f, %.2f\n", vec[0], vec[1], vec[2]); + // printf(" v0 = %.2f, %.2f, %.2f\n", v0[0], v0[1], v0[2]); + // printf(" u1 = %.2f, %.2f, %.2f\n", u1[0], u1[1], u1[2]); + + // calculate the vector "v" which is the vector "vec" mapped onto + // the plane specified by "normal" and "v0". - /* calculate the vector "v" which is the vector "vec" mapped onto - the plane specified by "normal" and "v0". */ - - /* v = v0 + vec - u1 */ + // v = v0 + vec - u1 MAT3_ADD_VEC(tmp, v0, vec); MAT3_SUB_VEC(v, tmp, u1); - /* printf(" v = %.2f, %.2f, %.2f\n", v[0], v[1], v[2]); */ + // printf(" v = %.2f, %.2f, %.2f\n", v[0], v[1], v[2]); - /* Calculate the vector "result" which is "v" - "v0" which is a - * directional vector pointing from v0 towards v */ + // Calculate the vector "result" which is "v" - "v0" which is a + // directional vector pointing from v0 towards v - /* result = v - v0 */ + // result = v - v0 MAT3_SUB_VEC(result, v, v0); - /* printf(" result = %.2f, %.2f, %.2f\n", - result[0], result[1], result[2]); */ + // printf(" result = %.2f, %.2f, %.2f\n", + // result[0], result[1], result[2]); } #endif // !defined( USE_XTRA_MAT3_INLINES ) @@ -134,34 +130,32 @@ double fgPointLineSquared(MAT3vec p, MAT3vec p0, MAT3vec d) { } -/* $Log$ -/* Revision 1.4 1998/10/16 00:50:31 curt -/* Added point3d.hxx to replace cheezy fgPoint3d struct. -/* - * Revision 1.3 1998/08/24 20:04:12 curt - * Various "inline" code optimizations contributed by Norman Vine. - * - * Revision 1.2 1998/07/24 21:34:38 curt - * fgPointLine() rewritten into fgPointLineSquared() ... this ultimately saves - * us from doing a sqrt(). - * - * Revision 1.1 1998/07/08 14:40:10 curt - * polar3d.[ch] renamed to polar3d.[ch]xx, vector.[ch] renamed to vector.[ch]xx - * Updated fg_geodesy comments to reflect that routines expect and produce - * meters. - * - * Revision 1.3 1998/05/07 23:04:28 curt - * Added a blank formating line! - * - * Revision 1.2 1998/01/19 19:27:13 curt - * Merged in make system changes from Bob Kuehne - * This should simplify things tremendously. - * - * Revision 1.1 1997/12/22 04:13:17 curt - * Initial revision. - * */ - - - - - +// $Log$ +// Revision 1.5 1998/10/16 23:36:38 curt +// c++-ifying. +// +// Revision 1.4 1998/10/16 00:50:31 curt +// Added point3d.hxx to replace cheezy fgPoint3d struct. +// +// Revision 1.3 1998/08/24 20:04:12 curt +// Various "inline" code optimizations contributed by Norman Vine. +// +// Revision 1.2 1998/07/24 21:34:38 curt +// fgPointLine() rewritten into fgPointLineSquared() ... this ultimately saves +// us from doing a sqrt(). +// +// Revision 1.1 1998/07/08 14:40:10 curt +// polar3d.[ch] renamed to polar3d.[ch]xx, vector.[ch] renamed to vector.[ch]xx +// Updated fg_geodesy comments to reflect that routines expect and produce +// meters. +// +// Revision 1.3 1998/05/07 23:04:28 curt +// Added a blank formating line! +// +// Revision 1.2 1998/01/19 19:27:13 curt +// Merged in make system changes from Bob Kuehne +// This should simplify things tremendously. +// +// Revision 1.1 1997/12/22 04:13:17 curt +// Initial revision. +//