当前位置: 首页 > news >正文

做同步网站黄页网址18岁以下勿入免费

做同步网站,黄页网址18岁以下勿入免费,网站防止采集,thinkphp大型网站开发一:点乘介绍 1. 向量点乘: 2. 向量点乘的性质: 3. 向量点乘公式: 4. 向量的点乘的属性: (1):向量与自身做点乘,会得到向量长度的平方: (2&#xf…

一:点乘介绍

        1. 向量点乘:

        

        2. 向量点乘的性质:

        

       3. 向量点乘公式:

        

        

        

      4. 向量的点乘的属性:

        (1):向量与自身做点乘,会得到向量长度的平方:

        (2):向量长度,为向量与自身点乘后再求平方根:

        (3):向量投影,将a向量投影到向量b上:

        (4):向量夹角:

二:叉乘介绍:

        1. 向量叉乘:

           

        2. 向量叉乘公式:

         

        3. 向量叉乘的属性:

                判断三个向量是否共面:

三:应用1 - 求两直线的交点:

        (1)2D直线方程:

        (2)将直线1带入直线2中:  ,叉乘等于0,意味着两向量共线。

        (3)求交点:

                

四:应用2 - 求三个平面的交点:

        (1):三个平面方程:

                

        (2):三个平面方程,三个未知数,利用克拉默法则求解即可。

三:实现

#ifndef _POINT_H_
#define _POINT_H_#include <iostream>
#include <cmath>class Point2D
{
public:float x, y;Point2D() {}Point2D(float x, float y) : x(x), y(y) {}Point2D &operator+=(const Point2D &t){x += t.x;y += t.y;return *this;}Point2D &operator-=(const Point2D &t){x -= t.x;y -= t.y;return *this;}Point2D &operator*=(float t){x *= t;y *= t;return *this;}Point2D &operator/=(float t){x /= t;y /= t;return *this;}Point2D operator+(const Point2D &t) const{return Point2D(*this) += t;}Point2D operator-(const Point2D &t) const{return Point2D(*this) -= t;}Point2D operator*(float t) const{return Point2D(*this) *= t;}Point2D operator/(float t) const{return Point2D(*this) /= t;}float dot(const Point2D& b) const{return x * b.x + y * b.y;}friend std::ostream &operator<<(std::ostream &out, const Point2D &t){out << '(' << t.x << ',' << t.y << ')';return out;}};Point2D operator*(float a, const Point2D &b)
{return b * a;
}float dot(const Point2D& a, const Point2D& b)
{return a.dot(b);
}float norm(const Point2D& a)
{return dot(a, a);
}double abs(const Point2D& a) {return sqrt(norm(a));
}double proj(const Point2D& a, const Point2D& b)
{return dot(a, b) / abs(b);
}double angle(const Point2D& a, const Point2D& b)
{return acos(dot(a, b) / abs(a) / abs(b));
}float cross(const Point2D& a, const Point2D& b)
{return a.x * b.y - a.y * b.x;
}Point2D intersect(const Point2D& a1, const Point2D& d1, const Point2D& a2, const Point2D& d2)
{return a1 + cross(a2 - a1, d2) / cross(d1, d2) * d1;
}class Point3D: public Point2D
{
public:float z;Point3D() {}Point3D(float x, float y, float z) : Point2D(x, y), z(z) {}Point3D &operator+=(const Point3D &t){x += t.x;y += t.y;z += t.z;return *this;}Point3D &operator-=(const Point3D &t){x -= t.x;y -= t.y;z -= t.z;return *this;}Point3D &operator*=(float t){x *= t;y *= t;z *= t;return *this;}Point3D &operator/=(float t){x /= t;y /= t;z /= t;return *this;}Point3D operator+(const Point3D &t) const{return Point3D(*this) += t;}Point3D operator-(const Point3D &t) const{return Point3D(*this) -= t;}Point3D operator*(float t) const{return Point3D(*this) *= t;}Point3D operator/(float t) const{return Point3D(*this) /= t;}float dot(const Point3D &t) const{return x * t.x + y * t.y + z * t.z;}friend std::ostream &operator<<(std::ostream &out, const Point3D &t){out << '(' << t.x << ',' << t.y << ',' << t.z << ')';return out;}
};Point3D operator*(float a, Point3D b)
{return b * a;
}float dot(const Point3D& a, const Point3D& b) 
{return a.dot(b);
}float norm(const Point3D& a) 
{return dot(a, a);
}double abs(const Point3D& a) {return sqrt(norm(a));
}double proj(const Point3D& a, const Point3D& b)
{return dot(a, b) / abs(b);
}double angle(const Point3D& a, const Point3D& b)
{return acos(dot(a, b) / abs(a) / abs(b));
}Point3D cross(const Point3D& a, const Point3D& b)
{return Point3D(a.y * b.z - a.z * b.y,a.z * b.x - a.x * b.z,a.x * b.y - a.y * b.x);
}float triple(const Point3D& a, const Point3D& b, const Point3D& c) 
{return dot(a, cross(b, c));
}Point3D intersect(const Point3D& a1, const Point3D& n1, const Point3D& a2, const Point3D& n2, const Point3D& a3, const Point3D& n3) 
{Point3D x(n1.x, n2.x, n3.x);Point3D y(n1.y, n2.y, n3.y);Point3D z(n1.z, n2.z, n3.z);Point3D d(dot(a1, n1), dot(a2, n2), dot(a3, n3));return Point3D(triple(d, y, z),triple(x, d, z),triple(x, y, d)) / triple(n1, n2, n3);
}#endif

http://www.yayakq.cn/news/693031/

相关文章:

  • 说几个手机可以看的网站什么是网络营销广告
  • 自己做视频网站可以吗网站打开慢原因
  • 即墨网站建设哪家好wordpress和discuz对比
  • 天津网站建设流程设计师网址导航 优设
  • 怎么快速提升网站权重网页源代码提取视频
  • python怎么做网站建设部 招投标网站
  • 高级网站开发工程师证书设计网页通常使用什么语言
  • 网站排名软件下载无锡专业做网站公司
  • 南京网站开发南京乐识专注小程序开发方案
  • 临沂做网站多少钱前端开发是干嘛
  • 什么是静态网页seo关键词排名价格
  • 网站管理系统排行榜上海定制网站建设
  • 怎么知道自己网站的权重app游戏开发公司哪家好
  • wordpress模版怎么弄长沙seo排名扣费
  • 南京网站优化推广做外贸的专业网站
  • 网站源码在哪织梦php网站
  • 中国最大的网站制作公司wordpress登入插件
  • 江西省城乡建设厅网站重庆网页设计培训
  • 网站semseo先做哪个西安网站设计外包公司
  • 网站建设方案是什么jsp获取网站域名
  • 公司两个网站如何都备案大连企业网站排名优化
  • 微网站是免费的吗wordpress 点赞分享
  • 网站备案和域名备案的区别创业小项目 个人创业电商
  • 汕头网站排名优化报价阜南县城乡建设局官方网站
  • 海沧建设局网站商城源代码
  • 网站seo服务设计公司画册设计哪家好
  • 南京鼓楼做网站的公司济南网站建设山东聚搜网力推
  • 网页制作与网站开发...深圳房地产网站设计
  • 企业网站模板是什么企业注册代理
  • 手机网站制作哪家好个人怎么开跨境电商店铺