페이지 정보
작성자 정영웅 조회 48회 작성일 24-03-01 08:59본문
사용 환경 ; GStarCAD 2023 Professional Build 230629 64-Bit(English)
SDK 버전 : grxsdk for Gcad release ----- 20230629
개발 환경 : Microsoft Visual Studio Community 2022 (64-bit) Version 17.9.2 // .NET Framework 4.8.9181.0
하기의 예제 코드 실행 시 의도치 않은 동작을 합니다.
[CommandMethod("SalTestModifyDiametricDimensionPrefix")]
public void SalTestModifyDiametricDimensionPrefix()
{
Document gcDoc = GrxCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument;
Editor gcDocEd = gcDoc.Editor;
PromptSelectionResult gcSSPrompt = gcDocEd.GetSelection();
if (gcSSPrompt.Status != PromptStatus.OK) return;
SelectionSet gcSSet = gcSSPrompt.Value;
if (gcSSet == null) return;
Database gcCurDb = gcDoc.Database;
using (Transaction gcTrans = gcCurDb.TransactionManager.StartTransaction())
{
foreach (SelectedObject gcSelectedObject in gcSSet)
{
if (gcSelectedObject == null) continue;
var objectId = gcSelectedObject.ObjectId;
var entity = gcTrans.GetObject(objectId, OpenMode.ForWrite) as Entity;
if (entity is DiametricDimension)
{
var gcDiametricDimension = entity as DiametricDimension;
gcDiametricDimension.Prefix = "PREFIX"; // 이 부분에서 의도치 않은 작동 문제 발생
}
}
gcTrans.Commit();
}
}
주석 처리된 부분에서, 선택된 지름 치수의 prefix를 변경하려 하면 실제 실행 시, suffix가 변경됩니다. 결과 화면 아래 그림 참고 바랍니다.
CAD 자체의 속성창에서 prefix를 변경하면 정상적으로 작동하나 코드로 실행할 때에만 그렇습니다.
당 문제에 대한 해결 방법 문의 드립니다.