/////////////////////////////////////////////////////////////////////////////// // Copyright (C) 2002-2025, Open Design Alliance (the "Alliance"). // All rights reserved. // // This software and its documentation and related materials are owned by // the Alliance. The software may only be incorporated into application // programs owned by members of the Alliance, subject to a signed // Membership Agreement and Supplemental Software License Agreement with the // Alliance. The structure and organization of this software are the valuable // trade secrets of the Alliance and its suppliers. The software is also // protected by copyright law and international treaty provisions. Application // programs incorporating this software must include the following statement // with their copyright notices: // // This application incorporates Open Design Alliance software pursuant to a license // agreement with Open Design Alliance. // Open Design Alliance Copyright (C) 2002-2025 by Open Design Alliance. // All rights reserved. // // By use of this software, its documentation or related materials, you // acknowledge and accept the above terms. ////////////////////////////////////////////////////////////////////////////// #include "StdAfx.h" #include "DbPointGripPoints.h" #include OdResult OdDbPointGripPointsPE::getGripPoints( const OdDbEntity* ent, OdGePoint3dArray& gripPoints )const { OdDbPointPtr point = ent; //unsigned int size = gripPoints.size(); gripPoints.append(point->position()); return eOk; } OdResult OdDbPointGripPointsPE::moveGripPointsAt( OdDbEntity* pEntity, const OdIntArray& indices, const OdGeVector3d& offset ) { if ( indices.empty() ) return eOk; if (indices.length() > 1 || indices[0] != 0) return eInvalidInput; OdDbPointPtr point = pEntity; point->setPosition(point->position() + offset); return eOk; } OdResult OdDbPointGripPointsPE::getStretchPoints( const OdDbEntity* ent, OdGePoint3dArray& stretchPoints ) const { OdResult res = getGripPoints( ent, stretchPoints ); return res; } OdResult OdDbPointGripPointsPE::moveStretchPointsAt( OdDbEntity* ent, const OdIntArray& indices, const OdGeVector3d& offset ) { return moveGripPointsAt( ent, indices, offset); } OdResult OdDbPointGripPointsPE::getOsnapPoints( const OdDbEntity* pEnt, OdDb::OsnapMode osnapMode, OdGsMarker /*gsSelectionMark*/, const OdGePoint3d& /*pickPoint*/, const OdGePoint3d& /*lastPoint*/, const OdGeMatrix3d& /*xWorldToEye*/, OdGePoint3dArray& snapPoints ) const { OdDbPointPtr point = pEnt; if ((osnapMode == OdDb::kOsModeEnd) || (osnapMode == OdDb::kOsModeMid) || (osnapMode == OdDb::kOsModeCen) || (osnapMode == OdDb::kOsModeNear) ) snapPoints.append(point->position()); return eOk; }