๐Ÿ˜Ž ๊ณต๋ถ€ํ•˜๋Š” ์ง•์ง•์•ŒํŒŒ์นด๋Š” ์ฒ˜์Œ์ด์ง€?

EX3 03) [OpenCV๋กœ ๋ฐฐ์šฐ๋Š” C++์˜ ์˜์ƒ์ฒ˜๋ฆฌ] Point3_ ํด๋ž˜์Šค ๋ณธ๋ฌธ

๐Ÿ‘ฉ‍๐Ÿ’ป IoT (Embedded)/Image Processing

EX3 03) [OpenCV๋กœ ๋ฐฐ์šฐ๋Š” C++์˜ ์˜์ƒ์ฒ˜๋ฆฌ] Point3_ ํด๋ž˜์Šค

์ง•์ง•์•ŒํŒŒ์นด 2023. 1. 1. 23:22
728x90
๋ฐ˜์‘ํ˜•

<๋ณธ ๋ธ”๋กœ๊ทธ๋Š” OpenCV๋กœ ๋ฐฐ์šฐ๋Š” ์˜์ƒ์ฒ˜๋ฆฌ ๋ฐ ์‘์šฉ(์ƒ๋Šฅ์ถœํŒ์‚ฌ)์˜ ์„œ์ ์„ ์ฐธ๊ณ ํ•ด์„œ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค>

 

 

โญ Point3_ ํด๋ž˜์Šค

3์ฐจ์› ์ž๋ฃŒ๋ฅผ ๋‚˜ํƒ€๋‚ด๊ธฐ ์œ„ํ•œ ์ž๋ฃŒํ˜•

 

โœ… namespace

๋‚ด๋ถ€ ์‹๋ณ„์ž(ํ˜•์‹, ํ•จ์ˆ˜, ๋ณ€์ˆ˜ ๋“ฑ)์— ๋ฒ”์œ„๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„ ์–ธ์  ์˜์—ญ

#include <opencv2/opencv.hpp>
using namespace cv;
using namespace std;

int main() {
	// ๊ฐ์ฒด ๊ธฐ๋ณธ ๋ฐ ๊ฐ„๊ฒฐ ์„ ์–ธ ๋ฐฉ์‹
	Point3_<int> pt1(100, 200, 300);
	Point3_<float> pt2(92.3f, 125.23f, 250.f);
	Point3f pt3(0.3f, 0.f, 15.7f);
	Point3d pt4(0.25, 0.6, 33.3);

	// ๊ฐ์ฒด ๊ฐ„๊ฒฐ ์„ ์–ธ ๋ฐ ๊ฐ์ฒด ์—ฐ์‚ฐ -> i, f, d
	Point3i pt5 = pt1 - (Point3i)pt2;
	Point3f pt6 = pt2 * 3.14f;
	Point3d pt7 = (pt4 + (Point3d)pt3) * 10.f;

	// std::cout : ๋‹ค์–‘ํ•œ ํด๋ž˜์Šค์˜ ์›์†Œ๋ฅผ ์‰ฝ๊ฒŒ ์ถœ๋ ฅ
	cout << "๋‘ ๋ฒกํ„ฐ(pt4, pt7)์˜ ๋‚ด์  " << pt4.dot(pt7) << endl;
	cout << "pt5 = " << pt5.x << ", " << pt5.y << ", " << pt5.z << endl;
	cout << "[pt6] = " << pt6 << endl;
	cout << "[pt7] = " << pt7 << endl;
	
	return 0;
}

728x90
๋ฐ˜์‘ํ˜•
Comments