ADN Club > ObjectARX
Как использовать transfromBy для масштабирования?
vladimir.leontyev:
Всем привет,
есть AcDbEntity (AcDb3dSolid, AcDbCircle..) нужно его немного уменьшить/увеличить с помощью transfromBy()
не подскажите в какую сторону думать (может примерчик на с++)? спасибо
Александр Ривилис:
vladimir.leontyev,
Что тут думать, программировать нужно!
--- Код - C++ [Выбрать] ---double scale = 3.0; // Увеличиваем в три разаAcGePoint3d p(10,20,30); // Точка относительно которой производится масштабированиеAcGeMatrix3d mat; mat.setToScaling(scale,p);pEnt->transformBy(mat);
vladimir.leontyev:
Спасибо. Нашел тут еще старую ветку с вашим участием https://www.caduser.ru/forum/topic47418.html - Ну, очень полезно.
Я попробовал два варианта
mat.setToScaling(scale,p); и mat.scaling(scale,p);
работают по разному, не пойму почему...
Александр Ривилис:
--- Цитата: vladimir.leontyev от 25-12-2022, 00:04:51 ---Я попробовал два варианта
mat.setToScaling(scale,p); и mat.scaling(scale,p);
работают по разному, не пойму почему...
--- Конец цитаты ---
То есть? Приведи код и покажи в чем различие.
vladimir.leontyev:
.. извиняюсь, мой косяк, setToScaling работает,
разбираюсь сейчас с базовой точкой масштабирования, оказалось не все так просто.
еще раз thanks
Навигация
Перейти к полной версии