전체 글294 점 두개의 좌표를 가지고.. 그 점사이의 길이와 각도를 가져오는 코드 double GetAngleAndLength(point pt1, point pt2, double& length) { int xterm = pt2.x - pt1.x; //x좌표의 거리 int yterm = pt2.y - pt1.y; //y좌표의 거리 length = sqrt((double)(xterm * xterm) + (yterm * yterm)); //피타고라스의 정리를 이용. 길이를 구한다. double angle = 0; double sineValue = (double)yterm / length; //sinA = 높이 / 직선의길이 (h/r) angle = asin(sineValue); //arc sine으로 A값을 구한다. if( xterm 0) { angle =.. 2011. 10. 5. OGC GIS관련된 site. http://www.opengeospatial.org/ 여기서 spec관련된 정의를 찾아보자 2011. 10. 5. 디자인 패턴 - Prototype. 원형이 되는 객체를 복사하여 객체를 생성함. 프로토타입은 생성되는 객체의 실제 타입을 알 필요가 없음. 주로, 객체를 생성하는 시간이 오래 걸리거나 할 때, 유용하게 사용할 수 있다. 객체가 이미 하나 생성되었다. (A), 그런데 필요에 따라서 객체를 하나 더 생성하여야 하게 생겼다. (B), 근데 A와 B의 차이가 없거나 A.count = 3, B.Count=4인둥.. 별반 차이가 없다. 그럴 경우, 비싼 비용을 들여 객체를 생성할 필요가 없이, 이미 만들어진 A를 복사하는 것이, 이 프로토타입의 개념인듯. 1. 런타임에 새로운 객체를 추가하거나 삭제할 수 있다. 2. 객체의 생성시간을 줄여준다. (새로이 만드는게 아니라 자기 자신을 복제해서 사용하므로) 3. 추상 팩토리의 경우 구현 상속을 통해서 다.. 2011. 6. 25. 디자인 패턴 - Singleton 인스턴스를 하나만 가지는 클래스, 해당 인스턴스는 전역적으로 접근이 가능함. 어떨때 사용하면 좋은가? 프로그램은 종종 단일 인스턴스 객체를 필요로 한다. 예를 들어, 프로그램에서 로그를 찍는다거나..하나뿐인 DB를 사용할 필요가 있다면, 해당 객체의 인스턴스는 프로그램에서 여러번 생성되어야 할 필요는 없지 않을까?(개인적인 생각) 장점 및 단점 - 객체가 한번만 생성됨. 전역 리소스 관리에는 필수적이다. 그리고 전역 변수를 사용하는 것 보다 좋은 방법이다. - 무리해서 남용하기 쉬우나, 그것은 피하자. 생성자는 감추자, 그리고 메소드는 static으로... public static singleton getInstance() { if( instance != null) { return instance; } .. 2011. 6. 25. DWORD도 overflow가 날수있나.. __int64를 사용하기.. 파일 전송시 용량 체크를 하려고 하는데.. size값을 DWORD에 넣어왔다. 용량이 10기가가 넘어가니.. _tstoi함수로는 overflow발생.. ㄷㄷ.. 그래서 _tstoi를 _tstoi64로 변경했다. 그랬더니 내가 가진 개발 PC에서는 size체크를 정상적으로 할 수 있었다. :D 근데.. 이놈을 릴리즈로 빌드하니 문제발생 -_-... 그래서 DWORD -> int64를 사용하기로 결정! 근데 Int64가 Visual Assist에 뜨길래.. 이걸로 바꾸었더니 상큼히 빌드에러.. 64비트 정수형을 사용하려면.. __int64로 사용하여야 한다. (앞에 언더바 두개임) __int 64처럼 쓰면 안됨. 오로지 __int64로... 근데 이번엔 이 값을 로그로 확인해 보려구 하니까.. %u, %ld.. 2011. 5. 24. C#, XML파싱하기 C# 진짜 개발하긴 편하네.. XMLElement를 이용하면 쉽게 XML파싱을 할 수 있다. string xmlPath = 읽을 XML의 Path; XmlDocument xDoc = new XmlDocument(); xDoc.Load(xmlPath); 2011. 3. 23. 이전 1 ··· 32 33 34 35 36 37 38 ··· 49 다음 728x90