Пример #1
0
        //--------------------------------------------------------------
        /// <summary>
        /// Initializes a new instance of the <see cref="CollisionDetection"/> class.
        /// </summary>
        public CollisionDetection()
        {
            Epsilon = 0.001f;
              ContactPositionTolerance = 0.01f;
              ContactFilter = new ContactReducer();
              ContinuousCollisionDetectionMode = ContinuousCollisionDetectionMode.Linear;

              // This property must be updated last because it uses "this".
              AlgorithmMatrix = new CollisionAlgorithmMatrix(this);
        }
Пример #2
0
        //--------------------------------------------------------------
        #region Creation and Cleanup
        //--------------------------------------------------------------

        /// <summary>
        /// Initializes a new instance of the <see cref="CollisionDetection"/> class.
        /// </summary>
        public CollisionDetection()
        {
            Epsilon = 0.001f;
            ContactPositionTolerance         = 0.01f;
            ContactFilter                    = new ContactReducer();
            ContinuousCollisionDetectionMode = ContinuousCollisionDetectionMode.Linear;

            // This property must be updated last because it uses "this".
            AlgorithmMatrix = new CollisionAlgorithmMatrix(this);
        }
Пример #3
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CollisionAlgorithmMatrix" /> class.
        /// </summary>
        /// <param name="matrix">The <see cref="CollisionAlgorithmMatrix" /> from which the settings are copied.</param>
        internal CollisionAlgorithmMatrix(CollisionAlgorithmMatrix matrix)
        {
            _newEntryLock = new object();
            _newEntries   = new Dictionary <Pair <Type>, CollisionAlgorithm>();

            foreach (var entry in matrix._matrix)
            {
                _matrix[entry.Key] = entry.Value;
            }

            _version = matrix._version;
        }
Пример #4
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CollisionAlgorithmMatrix" /> class.
        /// </summary>
        /// <param name="matrix">The <see cref="CollisionAlgorithmMatrix" /> from which the settings are copied.</param>
        internal CollisionAlgorithmMatrix(CollisionAlgorithmMatrix matrix)
        {
            _newEntryLock = new object();
              _newEntries = new Dictionary<Pair<Type>, CollisionAlgorithm>();

              foreach (var entry in matrix._matrix)
            _matrix[entry.Key] = entry.Value;

              _version = matrix._version;
        }