⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pointtool.h

📁 another source code for reduced basis
💻 H
字号:
/*A fast and simple stretch-minimizing mesh parameterization C++ codeCopyright:(c) Shin Yoshizawa, 2004E-mail: shin.yoshizawa@mpi-sb.mpg.deURL: http://www.mpi-sb.mpg.de/~shinAffiliation: Max-Planck-Institut fuer Informatik: Computer Graphics Group  Stuhlsatzenhausweg 85, 66123 Saarbruecken, Germany Phone +49 681 9325-408 Fax +49 681 9325-499  All right is reserved by Shin Yoshizawa.This C++ sources are allowed for only primary user of research and educational purposes. Don't use secondary: copy, distribution, diversion, business purpose, and etc..  */class Point3d;class Point2d;class PointTool{ public:  Point3d *ddv1;  Point3d *ddv2;  Point3d *ddv3;  Point2d *uij;  Point2d *vij;  PointTool(){    ddv1 = new Point3d(0.0,0.0,0.0);    ddv2 = new Point3d(0.0,0.0,0.0);    ddv3 = new Point3d(0.0,0.0,0.0);    uij = new Point2d(0.0,0.0);    vij = new Point2d(0.0,0.0);      }  virtual ~PointTool(){    delete ddv1;    delete ddv2;    delete ddv3;    delete uij;    delete vij;  } private:    PointTool(const PointTool& rhs);  const PointTool &operator=(const PointTool& rhs); public:    double PointTool::getArea(Point3d* dv1,Point3d* dv2,Point3d* dv3);      void PointTool::Normalize3D(Point3d* inout);  void PointTool::Normalize2D(Point2d* inout);    double PointTool::Point2DSize(Point2d *dv);  double PointTool::Point2DSize(double d1x,double d1y,double d2x,double d2y);  double PointTool::Point2DSizeSq(double d1x,double d1y,double d2x,double d2y);  double PointTool::Distance(Point3d *in1,Point3d *in2);  double PointTool::getAlphaT(Point2d *dv,double ax,double ay,double bx,double by,double cx,double cy);  void PointTool::makeVector(Point3d *out,Point3d *in1,Point3d *in2);  void PointTool::CrossVector(Point3d *out,Point3d *in1,Point3d *in2);  double PointTool::InnerProduct(Point3d *in1,Point3d *in2);  double PointTool::InnerProduct(Point2d *in1,Point2d *in2);    double PointTool::Point3dSize(Point3d *in);    int PointTool::getBraycentricC(Point3d *evaluation,Point3d *baryparam,Point3d *v1,Point3d *v2,Point3d *v3, Point3d **bc);     void PointTool::setCenter(Point3d *out,Point3d *in1,Point3d *in2,Point3d *in3);   void PointTool::setParametricDs(Point3d *out,Point3d *q1,Point3d *q2,Point3d *q3,double t1,double t2,double t3,double A);  void PointTool::setParametricDt(Point3d *out,Point3d *q1,Point3d *q2,Point3d *q3,double s1,double s2,double s3,double A);   double PointTool::getParametricA(double t1,double t2,double t3,double s1,double s2,double s3);  void PointTool::ScalarVector(Point3d *out,double dv,Point3d *in);   double PointTool::getS(Point2d *v0,Point2d *v1,Point2d *v2);      void PointTool::setC(double *out,Point2d *v1,Point2d *v2,Point2d *v3,Point2d *v4); };

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -