版权声明:版权归个人所有!转载请注明出处。 https://blog.csdn.net/sapch33/article/details/83068161
以下三个AS的实体选择集在使用前必须设定好过滤器,安全起见在选择结束后使用过滤器清除命令。
AcquireSingleObject( ), AcquireMultipleObjects( ) and AcquireSingleObjectWithPoint( )
示例如下:
public void Query(AstUI pAstUI)
{
//Filter to select only straight beam
IClassFilter classFilter;
classFilter = pAstUI.GetClassFilter();
classFilter.AppendAcceptedClass(eClassType.kBeamStraightClass);
//Declare the input objects
AstObjectsArr inputObjectsArr = m_Joint.CreateObjectsArray();
eUIErrorCodes errCode;
IAstObject selectedObject = pAstUI.AcquireSingleObject(163, out errCode);
//selection incorrect
if (errCode == eUIErrorCodes.kUIError)
return;
//user abort the selection
if (errCode == eUIErrorCodes.kUICancel)
return;
//add selected object to the input objects array
if (selectedObject != null)
inputObjectsArr.Add(selectedObject);
//add all the objects selected by the user (input objects)
m_Joint.InputObjects = inputObjectsArr;
//load default parameters for joint
loadDefaultValues();
}