File: point_example.cpp

package info (click to toggle)
opencamlib 2023.01.11-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 29,800 kB
  • sloc: cpp: 8,722; python: 5,530; sh: 604; javascript: 310; makefile: 209
file content (36 lines) | stat: -rw-r--r-- 1,161 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36

#include <string>
#include <iostream>
#include <cmath>

#include <opencamlib/point.hpp>
#include <opencamlib/numeric.hpp>

int main() {
    ocl::Point p1;
    p1.x = 1.2;
    p1.y = sqrt(p1.x);
    p1.z = p1.x + p1.y;
    std::cout << "p1=" << p1 << "\n";
    ocl::Point p2(1.23,4.56,3.219);
    std::cout << "p2=" << p2 << "\n";
    
    std::cout << "addition:\n";
    std::cout << "  " << p1 << " + " << p2 << " = " << p1+p2 << "\n";
    std::cout << "subtraction:\n";
    std::cout << "  " << p1 << " - " << p2 << " = " << p1-p2 << "\n";
    std::cout << "dot product:\n";
    std::cout << "  " << p1 << " dot " << p2 << " = " << p1.dot(p2) << "\n";
    std::cout << "cross product:\n";
    std::cout << "  " << p1 << " cross " << p2 << " = " << p1.cross(p2) << "\n";
    std::cout << "scalar multiplication:\n";
    std::cout << "  " << p1 << " * 0.1  = " << 0.1*p1 << "\n";
    std::cout << "norm:\n";
    std::cout << "  norm( " << p1 << " )  = " << p1.norm() << "\n";
    std::cout << "normalize:\n";
    ocl::Point p3 = p1;
    p3.normalize();
    std::cout << "  " << p1 << ".normalize()  = " << p3 << " norm=" << p3.norm() << "\n";

    return 0;
}