34 class FL_EXPORT TRange
44 TRange(T tLBX, T tLBY, T tUBX, T tUBY)
54 tpPoints[0].x = tr.left;
55 tpPoints[0].y = tr.top;
56 tpPoints[1].x = tr.right;
57 tpPoints[1].y = tr.bottom;
60 TRange(
const TRange<int16_t>& tr)
62 tpPoints[0].Set(tr.tpPoints[0]);
63 tpPoints[1].Set(tr.tpPoints[1]);
66 TRange(
const TRange<int16_t>* pTr)
70 tpPoints[0].Set(pTr->tpPoints[0]);
71 tpPoints[1].Set(pTr->tpPoints[1]);
75 TRange(
const TRange<uint16_t>& tr)
77 tpPoints[0].Set(tr.tpPoints[0]);
78 tpPoints[1].Set(tr.tpPoints[1]);
81 TRange(
const TRange<uint16_t>* pTr)
85 tpPoints[0].Set(pTr->tpPoints[0]);
86 tpPoints[1].Set(pTr->tpPoints[1]);
90 TRange(
const TRange<int32_t>& tr)
92 tpPoints[0].Set(tr.tpPoints[0]);
93 tpPoints[1].Set(tr.tpPoints[1]);
96 TRange(
const TRange<int32_t>* pTr)
100 tpPoints[0].Set(pTr->tpPoints[0]);
101 tpPoints[1].Set(pTr->tpPoints[1]);
105 TRange(
const TRange<uint32_t>& tr)
107 tpPoints[0].Set(tr.tpPoints[0]);
108 tpPoints[1].Set(tr.tpPoints[1]);
111 TRange(
const TRange<uint32_t>* pTr)
115 tpPoints[0].Set(pTr->tpPoints[0]);
116 tpPoints[1].Set(pTr->tpPoints[1]);
120 TRange(
const TRange<int64_t>& tr)
122 tpPoints[0].Set(tr.tpPoints[0]);
123 tpPoints[1].Set(tr.tpPoints[1]);
126 TRange(
const TRange<int64_t>* pTr)
130 tpPoints[0].Set(pTr->tpPoints[0]);
131 tpPoints[1].Set(pTr->tpPoints[1]);
135 TRange(
const TRange<uint64_t>& tr)
137 tpPoints[0].Set(tr.tpPoints[0]);
138 tpPoints[1].Set(tr.tpPoints[1]);
141 TRange(
const TRange<uint64_t>* pTr)
145 tpPoints[0].Set(pTr->tpPoints[0]);
146 tpPoints[1].Set(pTr->tpPoints[1]);
150 TRange(
const TRange<float>& tr)
152 tpPoints[0].Set(tr.tpPoints[0]);
153 tpPoints[1].Set(tr.tpPoints[1]);
156 TRange(
const TRange<float>* pTr)
160 tpPoints[0].Set(pTr->tpPoints[0]);
161 tpPoints[1].Set(pTr->tpPoints[1]);
165 TRange(
const TRange<double>& tr)
167 tpPoints[0].Set(tr.tpPoints[0]);
168 tpPoints[1].Set(tr.tpPoints[1]);
171 TRange(
const TRange<double>* pTr)
175 tpPoints[0].Set(pTr->tpPoints[0]);
176 tpPoints[1].Set(pTr->tpPoints[1]);
182 tpPoints[0].Set(tpLB);
183 tpPoints[1].Set(tpUB);
190 tpPoints[0].Set(pTpLB);
191 tpPoints[1].Set(pTpUB);
197 tpPoints[0].Set(tpLB);
198 tpPoints[1].Set(tpUB);
205 tpPoints[0].Set(pTpLB);
206 tpPoints[1].Set(pTpUB);
212 tpPoints[0].Set(tpLB);
213 tpPoints[1].Set(tpUB);
220 tpPoints[0].Set(pTpLB);
221 tpPoints[1].Set(pTpUB);
227 tpPoints[0].Set(tpLB);
228 tpPoints[1].Set(tpUB);
235 tpPoints[0].Set(pTpLB);
236 tpPoints[1].Set(pTpUB);
242 tpPoints[0].Set(tpLB);
243 tpPoints[1].Set(tpUB);
250 tpPoints[0].Set(pTpLB);
251 tpPoints[1].Set(pTpUB);
257 tpPoints[0].Set(tpLB);
258 tpPoints[1].Set(tpUB);
265 tpPoints[0].Set(pTpLB);
266 tpPoints[1].Set(pTpUB);
272 tpPoints[0].Set(tpLB);
273 tpPoints[1].Set(tpUB);
280 tpPoints[0].Set(pTpLB);
281 tpPoints[1].Set(pTpUB);
287 tpPoints[0].Set(tpLB);
288 tpPoints[1].Set(tpUB);
295 tpPoints[0].Set(pTpLB);
296 tpPoints[1].Set(pTpUB);
301 void Set(T tLBX, T tLBY, T tUBX, T tUBY)
303 tpPoints[0].x = tLBX;
304 tpPoints[0].y = tLBY;
305 tpPoints[1].x = tUBX;
306 tpPoints[1].y = tUBY;
311 tpPoints[0].x = tr.left;
312 tpPoints[0].y = tr.top;
313 tpPoints[1].x = tr.right;
314 tpPoints[1].y = tr.bottom;
317 void Set(
const TRange<int16_t>& tr)
319 tpPoints[0].Set(tr.tpPoints[0]);
320 tpPoints[1].Set(tr.tpPoints[1]);
323 void Set(
const TRange<int16_t>* pTr)
327 tpPoints[0].Set(pTr->tpPoints[0]);
328 tpPoints[1].Set(pTr->tpPoints[1]);
332 void Set(
const TRange<uint16_t>& tr)
334 tpPoints[0].Set(tr.tpPoints[0]);
335 tpPoints[1].Set(tr.tpPoints[1]);
338 void Set(
const TRange<uint16_t>* pTr)
342 tpPoints[0].Set(pTr->tpPoints[0]);
343 tpPoints[1].Set(pTr->tpPoints[1]);
347 void Set(
const TRange<int32_t>& tr)
349 tpPoints[0].Set(tr.tpPoints[0]);
350 tpPoints[1].Set(tr.tpPoints[1]);
353 void Set(
const TRange<int32_t>* pTr)
357 tpPoints[0].Set(pTr->tpPoints[0]);
358 tpPoints[1].Set(pTr->tpPoints[1]);
362 void Set(
const TRange<uint32_t>& tr)
364 tpPoints[0].Set(tr.tpPoints[0]);
365 tpPoints[1].Set(tr.tpPoints[1]);
368 void Set(
const TRange<uint32_t>* pTr)
372 tpPoints[0].Set(pTr->tpPoints[0]);
373 tpPoints[1].Set(pTr->tpPoints[1]);
377 void Set(
const TRange<int64_t>& tr)
379 tpPoints[0].Set(tr.tpPoints[0]);
380 tpPoints[1].Set(tr.tpPoints[1]);
383 void Set(
const TRange<int64_t>* pTr)
387 tpPoints[0].Set(pTr->tpPoints[0]);
388 tpPoints[1].Set(pTr->tpPoints[1]);
392 void Set(
const TRange<uint64_t>& tr)
394 tpPoints[0].Set(tr.tpPoints[0]);
395 tpPoints[1].Set(tr.tpPoints[1]);
398 void Set(
const TRange<uint64_t>* pTr)
402 tpPoints[0].Set(pTr->tpPoints[0]);
403 tpPoints[1].Set(pTr->tpPoints[1]);
407 void Set(
const TRange<float>& tr)
409 tpPoints[0].Set(tr.tpPoints[0]);
410 tpPoints[1].Set(tr.tpPoints[1]);
413 void Set(
const TRange<float>* pTr)
417 tpPoints[0].Set(pTr->tpPoints[0]);
418 tpPoints[1].Set(pTr->tpPoints[1]);
422 void Set(
const TRange<double>& tr)
424 tpPoints[0].Set(tr.tpPoints[0]);
425 tpPoints[1].Set(tr.tpPoints[1]);
428 void Set(
const TRange<double>* pTr)
432 tpPoints[0].Set(pTr->tpPoints[0]);
433 tpPoints[1].Set(pTr->tpPoints[1]);
439 tpPoints[0].Set(tpLB);
440 tpPoints[1].Set(tpUB);
447 tpPoints[0].Set(pTpLB);
448 tpPoints[1].Set(pTpUB);
454 tpPoints[0].Set(tpLB);
455 tpPoints[1].Set(tpUB);
462 tpPoints[0].Set(pTpLB);
463 tpPoints[1].Set(pTpUB);
469 tpPoints[0].Set(tpLB);
470 tpPoints[1].Set(tpUB);
477 tpPoints[0].Set(pTpLB);
478 tpPoints[1].Set(pTpUB);
484 tpPoints[0].Set(tpLB);
485 tpPoints[1].Set(tpUB);
492 tpPoints[0].Set(pTpLB);
493 tpPoints[1].Set(pTpUB);
499 tpPoints[0].Set(tpLB);
500 tpPoints[1].Set(tpUB);
507 tpPoints[0].Set(pTpLB);
508 tpPoints[1].Set(pTpUB);
514 tpPoints[0].Set(tpLB);
515 tpPoints[1].Set(tpUB);
522 tpPoints[0].Set(pTpLB);
523 tpPoints[1].Set(pTpUB);
529 tpPoints[0].Set(tpLB);
530 tpPoints[1].Set(tpUB);
537 tpPoints[0].Set(pTpLB);
538 tpPoints[1].Set(pTpUB);
544 tpPoints[0].Set(tpLB);
545 tpPoints[1].Set(tpUB);
552 tpPoints[0].Set(pTpLB);
553 tpPoints[1].Set(pTpUB);
558 const TRange<T>& operator=(int32_t value)
566 const TRange<T>& operator=(int64_t value)
574 const TRange<T>& operator=(
float value)
582 const TRange<T>& operator=(
double value)
590 const TRange<T>& operator=(
const TRange<int32_t>& tr)
597 const TRange<T>& operator=(
const TRange<int64_t>& tr)
604 const TRange<T>& operator=(
const TRange<float>& tr)
611 const TRange<T>& operator=(
const TRange<double>& tr)
618 bool operator==(
const TRange<int32_t>& tr)
620 return tpPoints[0] == tr.tpPoints[0] && tpPoints[1] == tr.tpPoints[1];
623 bool operator==(
const TRange<int64_t>& tr)
625 return tpPoints[0] == tr.tpPoints[0] && tpPoints[1] == tr.tpPoints[1];
628 bool operator==(
const TRange<float>& tr)
630 return tpPoints[0] == tr.tpPoints[0] && tpPoints[1] == tr.tpPoints[1];
633 bool operator==(
const TRange<double>& tr)
635 return tpPoints[0] == tr.tpPoints[0] && tpPoints[1] == tr.tpPoints[1];
638 bool operator!=(
const TRange<int32_t>& tr)
640 return tpPoints[0] != tr.tpPoints[0] || tpPoints[1] != tr.tpPoints[1];
643 bool operator!=(
const TRange<int64_t>& tr)
645 return tpPoints[0] != tr.tpPoints[0] || tpPoints[1] != tr.tpPoints[1];
648 bool operator!=(
const TRange<float>& tr)
650 return tpPoints[0] != tr.tpPoints[0] || tpPoints[1] != tr.tpPoints[1];
653 bool operator!=(
const TRange<double>& tr)
655 return tpPoints[0] != tr.tpPoints[0] || tpPoints[1] != tr.tpPoints[1];
658 const TRange<T>& operator+=(int32_t value)
660 tpPoints[0] += value;
661 tpPoints[1] += value;
666 const TRange<T>& operator+=(int64_t value)
668 tpPoints[0] += value;
669 tpPoints[1] += value;
674 const TRange<T>& operator+=(
float value)
676 tpPoints[0] += value;
677 tpPoints[1] += value;
682 const TRange<T>& operator+=(
double value)
684 tpPoints[0] += value;
685 tpPoints[1] += value;
690 const TRange<T>& operator+=(
const TRange<int32_t>& tr)
692 tpPoints[0] += tr.tpPoints[0];
693 tpPoints[1] += tr.tpPoints[1];
698 const TRange<T>& operator+=(
const TRange<int64_t>& tr)
700 tpPoints[0] += tr.tpPoints[0];
701 tpPoints[1] += tr.tpPoints[1];
706 const TRange<T>& operator+=(
const TRange<float>& tr)
708 tpPoints[0] += tr.tpPoints[0];
709 tpPoints[1] += tr.tpPoints[1];
714 const TRange<T>& operator+=(
const TRange<double>& tr)
716 tpPoints[0] += tr.tpPoints[0];
717 tpPoints[1] += tr.tpPoints[1];
722 const TRange<T>& operator-=(int32_t value)
724 tpPoints[0] -= value;
725 tpPoints[1] -= value;
730 const TRange<T>& operator-=(int64_t value)
732 tpPoints[0] -= value;
733 tpPoints[1] -= value;
738 const TRange<T>& operator-=(
float value)
740 tpPoints[0] -= value;
741 tpPoints[1] -= value;
746 const TRange<T>& operator-=(
double value)
748 tpPoints[0] -= value;
749 tpPoints[1] -= value;
754 const TRange<T>& operator-=(
const TRange<int32_t>& tr)
756 tpPoints[0] -= tr.tpPoints[0];
757 tpPoints[1] -= tr.tpPoints[1];
762 const TRange<T>& operator-=(
const TRange<int64_t>& tr)
764 tpPoints[0] -= tr.tpPoints[0];
765 tpPoints[1] -= tr.tpPoints[1];
770 const TRange<T>& operator-=(
const TRange<float>& tr)
772 tpPoints[0] -= tr.tpPoints[0];
773 tpPoints[1] -= tr.tpPoints[1];
778 const TRange<T>& operator-=(
const TRange<double>& tr)
780 tpPoints[0] -= tr.tpPoints[0];
781 tpPoints[1] -= tr.tpPoints[1];
786 const TRange<T>& operator*=(int32_t value)
788 tpPoints[0] *= value;
789 tpPoints[1] *= value;
794 const TRange<T>& operator*=(int64_t value)
796 tpPoints[0] *= value;
797 tpPoints[1] *= value;
802 const TRange<T>& operator*=(
float value)
804 tpPoints[0] *= value;
805 tpPoints[1] *= value;
810 const TRange<T>& operator*=(
double value)
812 tpPoints[0] *= value;
813 tpPoints[1] *= value;
818 const TRange<T>& operator*=(
const TRange<int32_t>& tr)
820 tpPoints[0] *= tr.tpPoints[0];
821 tpPoints[1] *= tr.tpPoints[1];
826 const TRange<T>& operator*=(
const TRange<int64_t>& tr)
828 tpPoints[0] *= tr.tpPoints[0];
829 tpPoints[1] *= tr.tpPoints[1];
834 const TRange<T>& operator*=(
const TRange<float>& tr)
836 tpPoints[0] *= tr.tpPoints[0];
837 tpPoints[1] *= tr.tpPoints[1];
842 const TRange<T>& operator*=(
const TRange<double>& tr)
844 tpPoints[0] *= tr.tpPoints[0];
845 tpPoints[1] *= tr.tpPoints[1];
850 const TRange<T>& operator/=(int32_t value)
852 tpPoints[0] /= value;
853 tpPoints[1] /= value;
858 const TRange<T>& operator/=(int64_t value)
860 tpPoints[0] /= value;
861 tpPoints[1] /= value;
866 const TRange<T>& operator/=(
float value)
868 tpPoints[0] /= value;
869 tpPoints[1] /= value;
874 const TRange<T>& operator/=(
double value)
876 tpPoints[0] /= value;
877 tpPoints[1] /= value;
882 const TRange<T>& operator/=(
const TRange<int32_t>& tr)
884 tpPoints[0] /= tr.tpPoints[0];
885 tpPoints[1] /= tr.tpPoints[1];
890 const TRange<T>& operator/=(
const TRange<int64_t>& tr)
892 tpPoints[0] /= tr.tpPoints[0];
893 tpPoints[1] /= tr.tpPoints[1];
898 const TRange<T>& operator/=(
const TRange<float>& tr)
900 tpPoints[0] /= tr.tpPoints[0];
901 tpPoints[1] /= tr.tpPoints[1];
906 const TRange<T>& operator/=(
const TRange<double>& tr)
908 tpPoints[0] /= tr.tpPoints[0];
909 tpPoints[1] /= tr.tpPoints[1];
914 TRange<T> operator+(int32_t value)
916 TRange<T> trReturn(
this);
921 TRange<T> operator+(int64_t value)
923 TRange<T> trReturn(
this);
928 TRange<T> operator+(
float value)
930 TRange<T> trReturn(
this);
935 TRange<T> operator+(
double value)
937 TRange<T> trReturn(
this);
942 TRange<T> operator+(
const TRange<int32_t>& tr)
944 TRange<T> trReturn(
this);
949 TRange<T> operator+(
const TRange<int64_t>& tr)
951 TRange<T> trReturn(
this);
956 TRange<T> operator+(
const TRange<float>& tr)
958 TRange<T> trReturn(
this);
963 TRange<T> operator+(
const TRange<double>& tr)
965 TRange<T> trReturn(
this);
970 TRange<T> operator-(int32_t value)
972 TRange<T> trReturn(
this);
977 TRange<T> operator-(int64_t value)
979 TRange<T> trReturn(
this);
984 TRange<T> operator-(
float value)
986 TRange<T> trReturn(
this);
991 TRange<T> operator-(
double value)
993 TRange<T> trReturn(
this);
998 TRange<T> operator-(
const TRange<int32_t>& tr)
1000 TRange<T> trReturn(
this);
1005 TRange<T> operator-(
const TRange<int64_t>& tr)
1007 TRange<T> trReturn(
this);
1012 TRange<T> operator-(
const TRange<float>& tr)
1014 TRange<T> trReturn(
this);
1019 TRange<T> operator-(
const TRange<double>& tr)
1021 TRange<T> trReturn(
this);
1026 TRange<T> operator*(int32_t value)
1028 TRange<T> trReturn(
this);
1033 TRange<T> operator*(int64_t value)
1035 TRange<T> trReturn(
this);
1040 TRange<T> operator*(
float value)
1042 TRange<T> trReturn(
this);
1047 TRange<T> operator*(
double value)
1049 TRange<T> trReturn(
this);
1054 TRange<T> operator*(
const TRange<int32_t>& tr)
1056 TRange<T> trReturn(
this);
1061 TRange<T> operator*(
const TRange<int64_t>& tr)
1063 TRange<T> trReturn(
this);
1068 TRange<T> operator*(
const TRange<float>& tr)
1070 TRange<T> trReturn(
this);
1075 TRange<T> operator*(
const TRange<double>& tr)
1077 TRange<T> trReturn(
this);
1082 TRange<T> operator/(int32_t value)
1084 TRange<T> trReturn(
this);
1089 TRange<T> operator/(int64_t value)
1091 TRange<T> trReturn(
this);
1096 TRange<T> operator/(
float value)
1098 TRange<T> trReturn(
this);
1103 TRange<T> operator/(
double value)
1105 TRange<T> trReturn(
this);
1110 TRange<T> operator/(
const TRange<int32_t>& tr)
1112 TRange<T> trReturn(
this);
1117 TRange<T> operator/(
const TRange<int64_t>& tr)
1119 TRange<T> trReturn(
this);
1124 TRange<T> operator/(
const TRange<float>& tr)
1126 TRange<T> trReturn(
this);
1131 TRange<T> operator/(
const TRange<double>& tr)
1133 TRange<T> trReturn(
this);
1138 friend TRange<T> operator+(int32_t value,
const TRange<T>& tr)
1140 return TRange<T>(TRange<double>(tr) + value);
1142 friend TRange<T> operator+(int64_t value,
const TRange<T>& tr)
1144 return TRange<T>(TRange<double>(tr) + value);
1146 friend TRange<T> operator+(
float value,
const TRange<T>& tr)
1148 return TRange<T>(TRange<double>(tr) + value);
1150 friend TRange<T> operator+(
double value,
const TRange<T>& tr)
1152 return TRange<T>(TRange<double>(tr) + value);
1155 friend TRange<T> operator-(int32_t value,
const TRange<T>& tr)
1157 return TRange<T>(
TPoint<T>((T)(value - tr.tpPoints[0].x), (T)(value - tr.tpPoints[0].y)),
TPoint<T>((T)(value - tr.tpPoints[1].x), (T)(value - tr.tpPoints[1].y)));
1159 friend TRange<T> operator-(int64_t value,
const TRange<T>& tr)
1161 return TRange<T>(
TPoint<T>((T)(value - tr.tpPoints[0].x), (T)(value - tr.tpPoints[0].y)),
TPoint<T>((T)(value - tr.tpPoints[1].x), (T)(value - tr.tpPoints[1].y)));
1163 friend TRange<T> operator-(
float value,
const TRange<T>& tr)
1165 return TRange<T>(
TPoint<T>((T)(value - tr.tpPoints[0].x), (T)(value - tr.tpPoints[0].y)),
TPoint<T>((T)(value - tr.tpPoints[1].x), (T)(value - tr.tpPoints[1].y)));
1167 friend TRange<T> operator-(
double value,
const TRange<T>& tr)
1169 return TRange<T>(
TPoint<T>((T)(value - tr.tpPoints[0].x), (T)(value - tr.tpPoints[0].y)),
TPoint<T>((T)(value - tr.tpPoints[1].x), (T)(value - tr.tpPoints[1].y)));
1172 friend TRange<T> operator*(int32_t value,
const TRange<T>& tr)
1174 return TRange<T>(TRange<double>(tr) * value);
1176 friend TRange<T> operator*(int64_t value,
const TRange<T>& tr)
1178 return TRange<T>(TRange<double>(tr) * value);
1180 friend TRange<T> operator*(
float value,
const TRange<T>& tr)
1182 return TRange<T>(TRange<double>(tr) * value);
1184 friend TRange<T> operator*(
double value,
const TRange<T>& tr)
1186 return TRange<T>(TRange<double>(tr) * value);
1189 friend TRange<T> operator/(int32_t value,
const TRange<T>& tr)
1191 return TRange<T>(
TPoint<T>((T)(value / tr.tpPoints[0].x), (T)(value / tr.tpPoints[0].y)),
TPoint<T>((T)(value / tr.tpPoints[1].x), (T)(value / tr.tpPoints[1].y)));
1193 friend TRange<T> operator/(int64_t value,
const TRange<T>& tr)
1195 return TRange<T>(
TPoint<T>((T)(value / tr.tpPoints[0].x), (T)(value / tr.tpPoints[0].y)),
TPoint<T>((T)(value / tr.tpPoints[1].x), (T)(value / tr.tpPoints[1].y)));
1197 friend TRange<T> operator/(
float value,
const TRange<T>& tr)
1199 return TRange<T>(
TPoint<T>((T)(value / tr.tpPoints[0].x), (T)(value / tr.tpPoints[0].y)),
TPoint<T>((T)(value / tr.tpPoints[1].x), (T)(value / tr.tpPoints[1].y)));
1201 friend TRange<T> operator/(
double value,
const TRange<T>& tr)
1203 return TRange<T>(
TPoint<T>((T)(value / tr.tpPoints[0].x), (T)(value / tr.tpPoints[0].y)),
TPoint<T>((T)(value / tr.tpPoints[1].x), (T)(value / tr.tpPoints[1].y)));
점을 표현하는 간략화된 클래스
Definition TPoint.h:37
2D 범위를 표현하는 간략화된 클래스
Definition TRange.h:35
직사각형을 표현하는 간략화된 클래스
Definition TRect.h:37
Definition AESCryptography.h:18