| OLD | NEW |
| 1 /******************************************************************************* | 1 /******************************************************************************* |
| 2 * Copyright (c) 2015, Daniel Murphy, Google | 2 * Copyright (c) 2015, Daniel Murphy, Google |
| 3 * All rights reserved. | 3 * All rights reserved. |
| 4 * | 4 * |
| 5 * Redistribution and use in source and binary forms, with or without modificati
on, | 5 * Redistribution and use in source and binary forms, with or without modificati
on, |
| 6 * are permitted provided that the following conditions are met: | 6 * are permitted provided that the following conditions are met: |
| 7 * * Redistributions of source code must retain the above copyright notice, | 7 * * Redistributions of source code must retain the above copyright notice, |
| 8 * this list of conditions and the following disclaimer. | 8 * this list of conditions and the following disclaimer. |
| 9 * * Redistributions in binary form must reproduce the above copyright notice, | 9 * * Redistributions in binary form must reproduce the above copyright notice, |
| 10 * this list of conditions and the following disclaimer in the documentation | 10 * this list of conditions and the following disclaimer in the documentation |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 } | 65 } |
| 66 } | 66 } |
| 67 | 67 |
| 68 void init(ContactSolverDef def) { | 68 void init(ContactSolverDef def) { |
| 69 // System.out.println("Initializing contact solver"); | 69 // System.out.println("Initializing contact solver"); |
| 70 _step = def.step; | 70 _step = def.step; |
| 71 _count = def.count; | 71 _count = def.count; |
| 72 | 72 |
| 73 if (_positionConstraints.length < _count) { | 73 if (_positionConstraints.length < _count) { |
| 74 List<ContactPositionConstraint> old = _positionConstraints; | 74 List<ContactPositionConstraint> old = _positionConstraints; |
| 75 _positionConstraints = new List<ContactPositionConstraint>( | 75 _positionConstraints = |
| 76 Math.max(old.length * 2, _count)); | 76 new List<ContactPositionConstraint>(Math.max(old.length * 2, _count)); |
| 77 BufferUtils.arraycopy(old, 0, _positionConstraints, 0, old.length); | 77 BufferUtils.arraycopy(old, 0, _positionConstraints, 0, old.length); |
| 78 for (int i = old.length; i < _positionConstraints.length; i++) { | 78 for (int i = old.length; i < _positionConstraints.length; i++) { |
| 79 _positionConstraints[i] = new ContactPositionConstraint(); | 79 _positionConstraints[i] = new ContactPositionConstraint(); |
| 80 } | 80 } |
| 81 } | 81 } |
| 82 | 82 |
| 83 if (_velocityConstraints.length < _count) { | 83 if (_velocityConstraints.length < _count) { |
| 84 List<ContactVelocityConstraint> old = _velocityConstraints; | 84 List<ContactVelocityConstraint> old = _velocityConstraints; |
| 85 _velocityConstraints = new List<ContactVelocityConstraint>( | 85 _velocityConstraints = |
| 86 Math.max(old.length * 2, _count)); | 86 new List<ContactVelocityConstraint>(Math.max(old.length * 2, _count)); |
| 87 BufferUtils.arraycopy(old, 0, _velocityConstraints, 0, old.length); | 87 BufferUtils.arraycopy(old, 0, _velocityConstraints, 0, old.length); |
| 88 for (int i = old.length; i < _velocityConstraints.length; i++) { | 88 for (int i = old.length; i < _velocityConstraints.length; i++) { |
| 89 _velocityConstraints[i] = new ContactVelocityConstraint(); | 89 _velocityConstraints[i] = new ContactVelocityConstraint(); |
| 90 } | 90 } |
| 91 } | 91 } |
| 92 | 92 |
| 93 _positions = def.positions; | 93 _positions = def.positions; |
| 94 _velocities = def.velocities; | 94 _velocities = def.velocities; |
| 95 _contacts = def.contacts; | 95 _contacts = def.contacts; |
| 96 | 96 |
| (...skipping 1035 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1132 separation = | 1132 separation = |
| 1133 tempx * normal.x + tempy * normal.y - pc.radiusA - pc.radiusB; | 1133 tempx * normal.x + tempy * normal.y - pc.radiusA - pc.radiusB; |
| 1134 point.x = clipPointx; | 1134 point.x = clipPointx; |
| 1135 point.y = clipPointy; | 1135 point.y = clipPointy; |
| 1136 normal.x *= -1; | 1136 normal.x *= -1; |
| 1137 normal.y *= -1; | 1137 normal.y *= -1; |
| 1138 break; | 1138 break; |
| 1139 } | 1139 } |
| 1140 } | 1140 } |
| 1141 } | 1141 } |
| OLD | NEW |