From 0ce40abb18ec02ec6fd6bcc5f21612c88daa7578 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Mon, 12 Oct 2020 03:04:00 +0000 Subject: CTAN sync 202010120303 --- support/dktools/WxdkdrawControlTools.cpt | 403 ------------------------------- 1 file changed, 403 deletions(-) delete mode 100644 support/dktools/WxdkdrawControlTools.cpt (limited to 'support/dktools/WxdkdrawControlTools.cpt') diff --git a/support/dktools/WxdkdrawControlTools.cpt b/support/dktools/WxdkdrawControlTools.cpt deleted file mode 100644 index 31fc6a84fe..0000000000 --- a/support/dktools/WxdkdrawControlTools.cpt +++ /dev/null @@ -1,403 +0,0 @@ -%% options -copyright owner = Dirk Krause -copyright year = 2019-xxxx -SPDX-License-Identifier: BSD-3-Clause - - -# vim: set ai sw=4 ts=4 : - -%% module - - -#include "wxdkdraw.h" - -#ifndef WXDKDRAWFRAME_H_INCLUDED -#include "WxdkdrawFrame.h" -#endif - - - -$!trace-include - - - -void -WxdkdrawFrame::Control::CalculateZoomFactor(void) -{ - int8_t zl; /* Local copy of zoom level to analyze */ - - m_dZoom = 1.0; - if (NULL != m_pParent) { - if (NULL != m_pParent->m_pDrw) { - if ((uint8_t)0U != m_pParent->m_pDrw->gridunit) { - /* Grid is in cm */ - m_uGridOptical = 6400000UL; - } - else { - /* Grid is inch based (1/2 inch) */ - m_uGridOptical = 8128000UL; - } - zl = m_pParent->m_pDrw->zl; - if ((int8_t)0 < zl) { - while ((int8_t)1 < zl) { - zl -= (int8_t)2; - m_dZoom *= 2.0; - m_uGridOptical /= (uint32_t)2UL; - } - if ((int8_t)0 < zl) { - m_dZoom *= M_SQRT2; - m_uGridOptical /= (uint32_t)2UL; - } - } - else { - if ((int8_t)0 > zl) { - while ((int8_t)(-1) > zl) { - zl += (int8_t)2; - m_dZoom /= 2.0; - m_uGridOptical *= (uint32_t)2UL; - } - if ((int8_t)0 > zl) { - m_dZoom /= M_SQRT2; - m_uGridOptical *= (uint32_t)2UL; - } - } - } - if ((uint8_t)0U != m_pParent->m_pDrw->gridbase) { - m_uGridSnap = m_uGridOptical / (uint32_t)5UL; - } - else { - m_uGridSnap = m_uGridOptical / (uint32_t)4UL; - } - } - } -} - - - -void -WxdkdrawFrame::Control::CalculateGridDistances(void) -{ - - int8_t zl; /* Local copy of zoom level to analyze */ - - if (NULL != m_pParent) { - if (NULL != m_pParent->m_pDrw) { - if ((uint8_t)0U != m_pParent->m_pDrw->gridunit) { - /* Grid is in cm */ - m_uGridOptical = 6400000UL; - } - else { - /* Grid is inch based (1/2 inch) */ - m_uGridOptical = 8128000UL; - } - zl = m_pParent->m_pDrw->zl; - if ((int8_t)0 < zl) { - while ((int8_t)1 < zl) { - zl -= (int8_t)2; - m_uGridOptical /= (uint32_t)2UL; - } - if ((int8_t)0 < zl) { - m_uGridOptical /= (uint32_t)2UL; - } - } - else { - if ((int8_t)0 > zl) { - while ((int8_t)(-1) > zl) { - zl += (int8_t)2; - m_uGridOptical *= (uint32_t)2UL; - } - if ((int8_t)0 > zl) { - m_uGridOptical *= (uint32_t)2UL; - } - } - } - if ((uint8_t)0U != m_pParent->m_pDrw->gridbase) { - m_uGridSnap = m_uGridOptical / (uint32_t)5UL; - } - else { - m_uGridSnap = m_uGridOptical / (uint32_t)4UL; - } - } - } -} - - - -void -WxdkdrawFrame::Control::CalculateConversionCoefficients(void) -{ - $? "+ CalculateConversionCoefficients" - m_ptM.x = (m_ptRes.x * m_dZoom) / 16256000.0; - m_ptN.x = (double)(m_szDrawco.GetWidth()) / 2.0; - m_ptN.x -= ((double)(m_pParent->m_pDrw->cx) * m_ptRes.x * m_dZoom) - / 16256000.0; - m_ptM.y = 0.0 - (m_ptRes.y * m_dZoom) / 16256000.0; - m_ptN.y = (double)(m_szDrawco.GetHeight()) / 2.0; - m_ptN.y += ((double)(m_pParent->m_pDrw->cy) * m_ptRes.y * m_dZoom) - / 16256000.0; - $? ". mx = %g nx = %g", m_ptM.x, m_ptN.x - $? ". my = %g ny = %g", m_ptM.y, m_ptN.y - $? "- CalculateConversionCoefficients" -} - - - -double -WxdkdrawFrame::Control::ConvDist(double d) -{ -#if TRACE_DEBUG - double back; - back = fabs(m_ptM.x * d); - $? "= ConvDist ( %g ) = %g", d, back - return back; -#else - return (fabs(m_ptM.x * d)); -#endif -} - - - -double -WxdkdrawFrame::Control::ConvX(double x) -{ -#if TRACE_DEBUG - double back; - back = m_ptM.x * x + m_ptN.x; - $? "= ConvX ( %g ) = %g", x, back - return back; -#else - return (m_ptM.x * x + m_ptN.x); -#endif -} - - - -double -WxdkdrawFrame::Control::ConvY(double y) -{ -#if TRACE_DEBUG - double back; - back = m_ptM.y * y + m_ptN.y; - $? "= ConvY ( %g ) = %g", y, back - return back; -#else - return (m_ptM.y * y + m_ptN.y); -#endif -} - - - -double -WxdkdrawFrame::Control::ConvDist(int32_t d) -{ - return (ConvDist((double)d)); -} - - - -double -WxdkdrawFrame::Control::ConvX(int32_t x) -{ - return (ConvX((double)x)); -} - - - -double -WxdkdrawFrame::Control::ConvY(int32_t y) -{ - return (ConvY((double)y)); -} - - - -double -WxdkdrawFrame::Control::InvX(double x) -{ -#if TRACE_DEBUG - double back; - back = (x - m_ptN.x) / m_ptM.x; - $? "= InvX ( %g ) = %g", x, back - return back; -#else - return ((x - m_ptN.x) / m_ptM.x); -#endif -} - - - -double -WxdkdrawFrame::Control::InvY(double y) -{ -#if TRACE_DEBUG - double back; - back = (y - m_ptN.y) / m_ptM.y; - $? "= InvY ( %g ) = %g", y, back - return back; -#else - return ((y - m_ptN.y) / m_ptM.y); -#endif -} - - - -int32_t -WxdkdrawFrame::Control::InvX(double x, bool & ok) -{ - dk4_er_t er; /* Error report */ - double invx; /* Inverted x value */ - int32_t i32; /* Intermediate result */ - int32_t back = (int32_t)0L; - $? "+ InvX %g", x - dk4error_init(&er); - invx = InvX(x); - i32 = dk4ma_int32_from_double(dk4ma_rint(invx), &er); - if (DK4_E_NONE == er.ec) { - back = i32; - } - else { $? "! overflow" - ok = false; - } - $? "- InvX %ld", (long)back - return back; -} - - - -int32_t -WxdkdrawFrame::Control::InvY(double y, bool & ok) -{ - dk4_er_t er; /* Error report */ - double invy; /* Inverted y value */ - int32_t i32; /* Intermediate result */ - int32_t back = (int32_t)0L; - $? "+ InvY %g", y - dk4error_init(&er); - invy = InvY(y); - i32 = dk4ma_int32_from_double(dk4ma_rint(invy), &er); - if (DK4_E_NONE == er.ec) { - back = i32; - } - else { $? "! overflow" - ok = false; - } - $? "- InvY %ld", (long)back - return back; -} - - - -int32_t -WxdkdrawFrame::Control::GridRoundDown(int32_t x,uint32_t gr,bool & ok,bool fo) -{ - dk4_er_t er; /* Error report */ - int32_t back; /* Function result */ - int32_t rem; /* Division remainder */ - $? "+ GridRoundDown %ld %lu %d", (long)x, (unsigned long)gr, (fo ? 1 : 0) - back = x / (int32_t)gr; $? ". back = %ld", (long)back - rem = x % (int32_t)gr; $? ". rem = %ld", (long)rem - dk4error_init(&er); - if (((int32_t)0L > rem) || ((fo) && ((int32_t)0L == rem))) { - back--; - } - back = dk4ma_int32_t_mul(back, (int32_t)gr, &er); - if (DK4_E_NONE != er.ec) { - ok = false; - } - $? "- GridRoundDown %ld", (long)back - return back; -} - - - -int32_t -WxdkdrawFrame::Control::GridRoundUp(int32_t x, uint32_t gr, bool & ok, bool fo) -{ - dk4_er_t er; /* Error report */ - int32_t back; /* Function result */ - int32_t rem; /* Division remainder */ - $? "+ GridRoundUp %ld %lu %d", (long)x, (unsigned long)gr, (fo ? 1 : 0) - dk4error_init(&er); - back = x / (int32_t)gr; - rem = x % (int32_t)gr; - if (((int32_t)0L < rem) || ((fo) && ((int32_t)0L == rem))) { - back++; - } - back = dk4ma_int32_t_mul(back, (int32_t)gr, &er); - if (DK4_E_NONE != er.ec) { - ok = false; - } - $? "- GridRoundUp %ld", (long)back - return back; - -} - - - -int32_t -WxdkdrawFrame::Control::GridRoundNearest(int32_t x, uint32_t gr, bool & ok) -{ - dk4_er_t er; /* Error report */ - int32_t back; /* Function result */ - int32_t rem; /* Division remainder */ - $? "+ GridRoundNearest %ld %lu", (long)x, (unsigned long)gr - dk4error_init(&er); - back = x / (int32_t)gr; - rem = x % (int32_t)gr; - if ((int32_t)0L > rem) { - if (rem <= ((int32_t)0L - (int32_t)gr / (int32_t)2L)) { - back = dk4ma_int32_t_sub(back, (int32_t)1L, &er); - } - } - else { - if (rem >= (int32_t)gr / (int32_t)2L) { - back = dk4ma_int32_t_add(back, (int32_t)1L, &er); - } - } - back = dk4ma_int32_t_mul(back, (int32_t)gr, &er); - if (DK4_E_NONE != er.ec) { - ok = false; - } - $? "- GridRoundNearest %ld", (long)back - return back; -} - - - -int -WxdkdrawFrame::Control::LineWidthForObject( - Wxd_drawing_t const *pDrw, Wxd_object_t const *pObj, int iMarkup -) -{ - int back; - uint16_t lw; - $? "+ LineWidthForObject" -#if TRACE_DEBUG - $? ". base lw = %d", (int)(pDrw->baselw) - $? ". obj lw = %d", (int)(pObj->lw) - $? ". product = %g", (double)(pDrw->baselw) * (double)(pObj->lw) - $? ". convert = %g", ConvDist((double)(pDrw->baselw) * (double)(pObj->lw)) -#endif - -#if VERSION_BEFORE_2020_08_16 - back = (int)dk4ma_rint( - ConvDist((double)(pDrw->baselw) * (double)(pObj->lw)) - ); -#else - lw = pObj->lw; - if (((uint16_t)0U == lw) && (WXD_MARKUP_NONE != iMarkup)) { - lw = (uint16_t)2U; $? ". lw correction for iMarkup - } - back = (int)dk4ma_rint( - ConvDist((double)(pDrw->baselw) * (double)lw) - ); -#endif - $? ". back = %d", back - if (0 == back) { back = 1; } - $? "- LineWidthForObject %d", back - return back; -} - - -/* vim: set ai sw=4 ts=4 : */ - -- cgit v1.2.3