//---------------------------------------------------------------------------// // Draw // //---------------------------------------------------------------------------// bool CFilterDist::Apply(CDisplayDevice *pDD, TRenderTgt *pRenderTgt, int iTexTgt) { switch (m_iType) { case DIST_CRYSTAL: DrawCrystal (pDD, pRenderTgt, iTexTgt); break; case DIST_CIRCCRYSTAL: DrawCircCrystal(pDD, pRenderTgt, iTexTgt); break; case DIST_SIN: DrawSin (pDD, pRenderTgt, iTexTgt); break; case DIST_POLAR: DrawPolar (pDD, pRenderTgt, iTexTgt); break; } return true; }
Adesk::Boolean PolyLineDirectionDraw::subWorldDraw( AcGiWorldDraw* mode ) { assertReadEnabled () ; // 绘制箭头主干 //DrawLine( mode, m_insertPt, m_angle, m_length ); //DrawLine( mode, m_insertPt, m_angle + PI, m_length ); // 绘制箭头 AcGeVector3d v( AcGeVector3d::kXAxis ); v.rotateBy( m_angle, AcGeVector3d::kZAxis ); DrawArrow( mode, m_insertPt/* + v * m_length*/, m_angle, m_arrow_width, m_arrow_length ); // 绘制污风标记 if( m_vt == 1 ) { v.rotateBy( PI, AcGeVector3d::kZAxis ); DrawSin( mode, m_insertPt + v * m_length, m_angle, m_radius );; } return Adesk::kTrue; }