예제 #1
0
        public virtual ISceneEntity [] GetEntities(Vector3 pos, float radius)
        {
            lock (m_objectEntitiesLock) {
                List <ISceneEntity> tmp = new List <ISceneEntity> (m_objectEntities.Count);

                m_objectEntities.ForEach(delegate(ISceneEntity entity) {
                    //Add attachments as well, as they might be needed
                    if ((entity.AbsolutePosition - pos).LengthSquared() < radius * radius ||
                        entity.IsAttachment)
                    {
                        tmp.Add(entity);
                    }
                });
                return(tmp.ToArray());
            }
        }