kernel_ftc3.h
来自「CGAL is a collaborative effort of severa」· C头文件 代码 · 共 1,787 行 · 第 1/4 页
H
1,787 行
Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST); return collinearC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact()); }}template < class CT, class ET, bool Protected, class Cache >/* CGAL_KERNEL_MEDIUM_INLINE */OrientationorientationC3( const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &px, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &py, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qy, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &ry, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &sx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &sy, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &sz){ try { CGAL_PROFILER("IA orientationC3 calls"); Protect_FPU_rounding<Protected> Protection; return orientationC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval(), sx.interval(), sy.interval(), sz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("IA orientationC3 failures"); Protect_FPU_rounding<!Protected> Protection(CGAL_FE_TONEAREST); return orientationC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact(), sx.exact(), sy.exact(), sz.exact()); }}template < class ET >/* CGAL_KERNEL_MEDIUM_INLINE */OrientationorientationC3( const Lazy_exact_nt<ET> &px, const Lazy_exact_nt<ET> &py, const Lazy_exact_nt<ET> &pz, const Lazy_exact_nt<ET> &qx, const Lazy_exact_nt<ET> &qy, const Lazy_exact_nt<ET> &qz, const Lazy_exact_nt<ET> &rx, const Lazy_exact_nt<ET> &ry, const Lazy_exact_nt<ET> &rz, const Lazy_exact_nt<ET> &sx, const Lazy_exact_nt<ET> &sy, const Lazy_exact_nt<ET> &sz){ try { CGAL_PROFILER("Lazy IA orientationC3 calls"); Protect_FPU_rounding<true> Protection; return orientationC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval(), sx.interval(), sy.interval(), sz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("Lazy IA orientationC3 failures"); Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST); return orientationC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact(), sx.exact(), sy.exact(), sz.exact()); }}template < class CT, class ET, bool Protected, class Cache >/* inline */AngleangleC3( const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &px, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &py, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qy, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &ry, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rz){ try { CGAL_PROFILER("IA angleC3 calls"); Protect_FPU_rounding<Protected> Protection; return angleC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("IA angleC3 failures"); Protect_FPU_rounding<!Protected> Protection(CGAL_FE_TONEAREST); return angleC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact()); }}template < class ET >/* inline */AngleangleC3( const Lazy_exact_nt<ET> &px, const Lazy_exact_nt<ET> &py, const Lazy_exact_nt<ET> &pz, const Lazy_exact_nt<ET> &qx, const Lazy_exact_nt<ET> &qy, const Lazy_exact_nt<ET> &qz, const Lazy_exact_nt<ET> &rx, const Lazy_exact_nt<ET> &ry, const Lazy_exact_nt<ET> &rz){ try { CGAL_PROFILER("Lazy IA angleC3 calls"); Protect_FPU_rounding<true> Protection; return angleC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("Lazy IA angleC3 failures"); Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST); return angleC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact()); }}template < class CT, class ET, bool Protected, class Cache >/* CGAL_KERNEL_LARGE_INLINE */Bounded_sidecoplanar_side_of_bounded_circleC3( const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &px, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &py, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qy, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &qz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &ry, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &rz, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &tx, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &ty, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &tz){ try { CGAL_PROFILER("IA coplanar_side_of_bounded_circleC3 calls"); Protect_FPU_rounding<Protected> Protection; return coplanar_side_of_bounded_circleC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval(), tx.interval(), ty.interval(), tz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("IA coplanar_side_of_bounded_circleC3 failures"); Protect_FPU_rounding<!Protected> Protection(CGAL_FE_TONEAREST); return coplanar_side_of_bounded_circleC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact(), tx.exact(), ty.exact(), tz.exact()); }}template < class ET >/* CGAL_KERNEL_LARGE_INLINE */Bounded_sidecoplanar_side_of_bounded_circleC3( const Lazy_exact_nt<ET> &px, const Lazy_exact_nt<ET> &py, const Lazy_exact_nt<ET> &pz, const Lazy_exact_nt<ET> &qx, const Lazy_exact_nt<ET> &qy, const Lazy_exact_nt<ET> &qz, const Lazy_exact_nt<ET> &rx, const Lazy_exact_nt<ET> &ry, const Lazy_exact_nt<ET> &rz, const Lazy_exact_nt<ET> &tx, const Lazy_exact_nt<ET> &ty, const Lazy_exact_nt<ET> &tz){ try { CGAL_PROFILER("Lazy IA coplanar_side_of_bounded_circleC3 calls"); Protect_FPU_rounding<true> Protection; return coplanar_side_of_bounded_circleC3( px.interval(), py.interval(), pz.interval(), qx.interval(), qy.interval(), qz.interval(), rx.interval(), ry.interval(), rz.interval(), tx.interval(), ty.interval(), tz.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("Lazy IA coplanar_side_of_bounded_circleC3 failures"); Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST); return coplanar_side_of_bounded_circleC3( px.exact(), py.exact(), pz.exact(), qx.exact(), qy.exact(), qz.exact(), rx.exact(), ry.exact(), rz.exact(), tx.exact(), ty.exact(), tz.exact()); }}template < class CT, class ET, bool Protected, class Cache >/* CGAL_KERNEL_MEDIUM_INLINE */boolequal_directionC3( const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dx1, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dy1, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dz1, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dx2, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dy2, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &dz2){ try { CGAL_PROFILER("IA equal_directionC3 calls"); Protect_FPU_rounding<Protected> Protection; return equal_directionC3( dx1.interval(), dy1.interval(), dz1.interval(), dx2.interval(), dy2.interval(), dz2.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("IA equal_directionC3 failures"); Protect_FPU_rounding<!Protected> Protection(CGAL_FE_TONEAREST); return equal_directionC3( dx1.exact(), dy1.exact(), dz1.exact(), dx2.exact(), dy2.exact(), dz2.exact()); }}template < class ET >/* CGAL_KERNEL_MEDIUM_INLINE */boolequal_directionC3( const Lazy_exact_nt<ET> &dx1, const Lazy_exact_nt<ET> &dy1, const Lazy_exact_nt<ET> &dz1, const Lazy_exact_nt<ET> &dx2, const Lazy_exact_nt<ET> &dy2, const Lazy_exact_nt<ET> &dz2){ try { CGAL_PROFILER("Lazy IA equal_directionC3 calls"); Protect_FPU_rounding<true> Protection; return equal_directionC3( dx1.interval(), dy1.interval(), dz1.interval(), dx2.interval(), dy2.interval(), dz2.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("Lazy IA equal_directionC3 failures"); Protect_FPU_rounding<false> Protection(CGAL_FE_TONEAREST); return equal_directionC3( dx1.exact(), dy1.exact(), dz1.exact(), dx2.exact(), dy2.exact(), dz2.exact()); }}template < class CT, class ET, bool Protected, class Cache >/* CGAL_KERNEL_MEDIUM_INLINE */boolequal_planeC3( const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &ha, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &hb, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &hc, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &hd, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pa, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pb, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pc, const Filtered_exact <CT, ET, Dynamic, Protected, Cache> &pd){ try { CGAL_PROFILER("IA equal_planeC3 calls"); Protect_FPU_rounding<Protected> Protection; return equal_planeC3( ha.interval(), hb.interval(), hc.interval(), hd.interval(), pa.interval(), pb.interval(), pc.interval(), pd.interval()); } catch (Interval_nt_advanced::unsafe_comparison) { CGAL_PROFILER("IA equal_planeC3 failures"); Protect_FPU_rounding<!Protected> Protection(CGAL_FE_TONEAREST); return equal_planeC3( ha.exact(), hb.exact(), hc.exact(), hd.exact(), pa.exact(), pb.exact(), pc.exact(), pd.exact()); }}template < class ET >/* CGAL_KERNEL_MEDIUM_INLINE */boolequal_planeC3(
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?