|
www.mxdraw.com
|
IMxDrawImageMark组件。 支持扩展属性"textOffsetPosition",类型为: McGePoint3d 支持扩展属性"Transparent",类型为: LONG,可以设置图片的透明度,取值在0~100
[ object, uuid(140035C2-9BC7-433F-A90D-DA409A2C91B4), dual, nonextensible, helpstring("IMxDrawImageMark interface"), pointer_default(unique) ]
interface IMxDrawImageMark : IMxDrawEntity;MxDrawImageMark.idl
例如: VC COM
LONGLONG lId = m_ocx.DrawImageMark(0,0,1.0,0.0,_T("G:\marker.png"),_T(""),TRUE);
IDispatchPtr spDispatch(m_ocx.ObjectIdToObject(lId) ,false);
IMxDrawImageMarkPtr spImage;
spDispatch->QueryInterface(&spImage);
if(spImage == NULL)
return;
IMxDrawResbufPtr param;
param.CreateInstance(__uuidof( MxDrawXLib::MxDrawResbuf ));
IMxDrawPointPtr pt;
pt.CreateInstance(__uuidof( MxDrawXLib::MxDrawPoint ));
pt->x = 0.0;
pt->y = -70.0;
param->AddPoint(pt);
spImage->MxSetProp(_T("textOffsetPosition"),param);
spImage->Text = _T("合格");
IMxDrawResbufPtr spData = spImage->MxGetProp(_T("textOffsetPosition"));
IMxDrawPointPtr spPt = spData->AtPoint(0);
double dX,dY,dZ;
spPt->get_x(&dX);
spPt->get_x(&dY);
spPt->get_x(&dZ);例如: JS
var sImageFile1 = "G:\downland\新建文件夹\新建文件夹\ie\marker.png";
var lId = mxOcx.DrawImageMark("40030.696470", "10564.051271", 1, 0, sImageFile1, "", true);
//mxOcx.TwinkeEnt(lId);
// 给一个很大的数据,可以代表把它放到最上面去。
mxOcx.SetEntityDrawOrder(lId,999999);
var imageMark = mxOcx.ObjectIdToObject(lId);
var textOffset = mxOcx.NewPoint();
textOffset.x = 0.0;
textOffset.y = -70;
var param = mxOcx.NewResbuf();
param.AddPoint(textOffset);
imageMark.SetProp("textOffsetPosition",param);
imageMark.Text = "合格";例如: C#
Int64 lId = axMxDrawX1.DrawImageMark(0, 0, -100, 15 * 3.14159265 / 180.0, "G:\1.jpg", "", true); MxDrawImageMark imageMark = (MxDrawImageMark)axMxDrawX1.ObjectIdToObject(lId); // 设置图片的透明度 MxDrawResbuf param = new MxDrawResbuf(); param.AddLong(50); imageMark.SetProp("setTransparent", param); axMxDrawX1.ZoomAll(); axMxDrawX1.UpdateDisplay();