选择集及过滤器

版权声明:版权归个人所有!转载请注明出处。 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();
    }

猜你喜欢

转载自blog.csdn.net/sapch33/article/details/83068161