개발메모(형식에 매이지 않는 짤막한 개발 낙서)

구간을 Linear/Log scale로 등분하고자 할 때

조회 수 3353 추천 수 0 2005.12.27 17:20:24
허창원 *.19.45.224
가정:
   시작점: f1
   끝점:   f2
   포인트수: numPoints

Linear Scale로 numPoints 등분하려면 ---------------------------
   delta = (f2 - f1) / (numPoints - 1);
   을 계산하여

   index를 0 ~ numPoints-1 까지 증가시킬 때,
   f = f1 + delta * index;
   로 계산하면 정확합니다.
   (delta를 매 루프마다 더해나가는 것은 미세한 오류가 누적될 수 있으므로, 매 index 마다 위와 같이 계산하는 것이 좋음)

Log Scale로 numPoints 등분하려면 ------------------------------
   deltalog10 = ( log10(f2) - log10(f1) ) / (numPoints - 1);
   을 계산하여,

   루프문에서 index를 0 ~ numPoints-1 까지 증가시킬 때,
   f = pow(10.0, log10(f1) + deltalog10 * index);
   로 계산하면 됩니다.

----------------------------------------------------------------

차원높은 프로그래밍을 하려면, 역시 수학을 잘해야겠습니다.
학생 여러분, 수학을 즐겨합시다.

하지만, 저처럼 수학을 잘하지 못하면,
애써 궁리한 것을 이렇게 메모라도 잘합시다.ㅎㅎ
List of Articles
번호 제목 글쓴이 날짜 조회 수
93 그래프 커서의 위치를 읽어와서 스트링 컨트롤에 표시하는 예 허창원 2006-06-16 3064
92 폴더가 있는지 체크하고, 없다면, 생성하는 예 허창원 2006-06-01 3161
91 주어진 경로명이 디렉토리(폴더)인지 파일인지 구분하려면... 허창원 2006-06-01 3029
90 Panel이 항상 위에 오도록 file 허창원 2006-05-25 3146
89 KD_RadioGroup KDManip.dll의 라디오그룹 사용 과정 메모 허창원 2006-05-10 2843
88 [Link] Reading and Writing Image Files 허창원 2006-05-03 2819
87 그래프의 Scaling Mode와 Range를 지정 예 허창원 2006-05-02 5408
86 저장할 때 데이터 폴더를 검사하여 필요하면 만들어서 저장하는 예 허창원 2006-04-18 2977
85 투명한 Canvas를 이용할 때 이런 모드... file 허창원 2006-04-13 3158
84 그래프 커서를 이용하려면 그래프의 Control Mode가... 허창원 2006-03-30 4474
83 테이블의 셀 인덱스 구하는 예 허창원 2006-03-07 2827
82 Rect, Point 구조체 선언된 userint.h의 일부 내용 허창원 2006-02-22 3236
81 List box에서 Delete 키를 눌렀을 때, 해당 Item 지우는 예 허창원 2006-02-02 3026
80 클립보드에 문자열 복사하기/가져오기 허창원 2006-01-09 3294
» 구간을 Linear/Log scale로 등분하고자 할 때 허창원 2005-12-27 3353
78 Build Error 중 Inconsistent type declarations... 해결방법 허창원 2005-12-23 3022
77 CVI에서 이용하는 Complex 데이터형 허창원 2005-12-22 2970
76 그래프 컨트롤 더블클릭하면 확대된 그래프 화면 보이기 허창원 2005-12-22 3076
75 명령버튼을 누를 때와 뗄 때에 각각 적절한 처리하기 file 허창원 2005-12-06 3912
74 Noisy Sine Wave 데이터 만들기 허창원 2005-11-24 3297