bprocessor-commit Mailing List for B-processor (Page 2)
Status: Pre-Alpha
Brought to you by:
henryml
You can subscribe to this list here.
| 2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(12) |
Jul
(117) |
Aug
(151) |
Sep
(157) |
Oct
(81) |
Nov
(117) |
Dec
(119) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2006 |
Jan
(183) |
Feb
(130) |
Mar
(117) |
Apr
(61) |
May
(82) |
Jun
(45) |
Jul
(149) |
Aug
(173) |
Sep
(199) |
Oct
(165) |
Nov
(107) |
Dec
(137) |
| 2007 |
Jan
(124) |
Feb
(58) |
Mar
(123) |
Apr
(80) |
May
(130) |
Jun
(64) |
Jul
(31) |
Aug
(42) |
Sep
(114) |
Oct
(167) |
Nov
(239) |
Dec
(200) |
| 2008 |
Jan
(43) |
Feb
(43) |
Mar
(4) |
Apr
(9) |
May
(5) |
Jun
(1) |
Jul
(3) |
Aug
(3) |
Sep
(13) |
Oct
(9) |
Nov
(12) |
Dec
|
| 2009 |
Jan
|
Feb
(20) |
Mar
(7) |
Apr
(12) |
May
(34) |
Jun
(72) |
Jul
|
Aug
(3) |
Sep
(31) |
Oct
(2) |
Nov
(8) |
Dec
(4) |
| 2010 |
Jan
(5) |
Feb
(32) |
Mar
(8) |
Apr
(7) |
May
(36) |
Jun
|
Jul
(11) |
Aug
(15) |
Sep
(7) |
Oct
(2) |
Nov
(13) |
Dec
(80) |
| 2011 |
Jan
|
Feb
|
Mar
(8) |
Apr
(12) |
May
(32) |
Jun
(9) |
Jul
(5) |
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
(8) |
| 2012 |
Jan
|
Feb
|
Mar
(3) |
Apr
(5) |
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(22) |
Jun
(5) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
|
From: Michael L. <he...@us...> - 2013-05-14 16:06:11
|
Update of /cvsroot/bprocessor/build/doc In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv4579/doc Modified Files: Changelog Log Message: Index: Changelog =================================================================== RCS file: /cvsroot/bprocessor/build/doc/Changelog,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** Changelog 11 Jun 2007 06:57:25 -0000 1.11 --- Changelog 14 May 2013 16:06:09 -0000 1.12 *************** *** 1,4 **** --- 1,9 ---- Changelog: ========== + 2013/05/14: Release M11 + Trying to renew the project after a period of very little activity. + This is a substantial update compared to the previous version. + + 2007/06/11: Release M9 - Substantial update |
|
From: Michael L. <he...@us...> - 2013-05-14 15:47:10
|
Update of /cvsroot/bprocessor/build In directory sfp-cvs-1.v30.ch3.sourceforge.com:/tmp/cvs-serv3580 Modified Files: build.xml Log Message: New version number Index: build.xml =================================================================== RCS file: /cvsroot/bprocessor/build/build.xml,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -d -r1.42 -r1.43 *** build.xml 17 Dec 2010 12:16:43 -0000 1.42 --- build.xml 14 May 2013 15:47:07 -0000 1.43 *************** *** 3,7 **** <target name="init"> <property name="project" value="bprocessor"/> ! <property name="version" value="M10"/> <property name="script.dir" value="${basedir}/bin"/> --- 3,7 ---- <target name="init"> <property name="project" value="bprocessor"/> ! <property name="version" value="M11"/> <property name="script.dir" value="${basedir}/bin"/> |
|
From: Sebastian G. <sg...@us...> - 2012-05-07 16:00:26
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv13676/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsSurface.java PhysicsSection.java
Log Message:
physics horizontal section
Index: PhysicsSurface.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsSurface.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PhysicsSurface.java 6 May 2012 15:14:59 -0000 1.3
--- PhysicsSurface.java 7 May 2012 16:00:24 -0000 1.4
***************
*** 20,24 ****
boolean displayDiagonals = false;
boolean displayCircularMesh = false;
! boolean displayMovementGuides = true;
//properties
--- 20,24 ----
boolean displayDiagonals = false;
boolean displayCircularMesh = false;
! boolean displayMovementGuides = false;
//properties
Index: PhysicsSection.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsSection.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PhysicsSection.java 6 May 2012 15:15:00 -0000 1.1
--- PhysicsSection.java 7 May 2012 16:00:24 -0000 1.2
***************
*** 3,9 ****
--- 3,11 ----
import java.util.ArrayList;
import java.util.Collection;
+ import java.util.HashMap;
import java.util.List;
import net.sourceforge.bprocessor.model.Edge;
+ import net.sourceforge.bprocessor.model.Item;
import net.sourceforge.bprocessor.model.ParameterBlock;
import net.sourceforge.bprocessor.model.Selection;
***************
*** 18,22 ****
--- 20,27 ----
Collection<Surface> surfaces = new ArrayList<Surface>();
PhysicsPlane sectionPlane;
+ List<Edge> intersectionEdges = new ArrayList<Edge>();
+ List<Surface> intersectionSurfaces = new ArrayList<Surface>();
Vertex intersection = new Vertex();
+ double area = 0;
//constructors
***************
*** 28,106 ****
public void computeSection () {
! List<Edge> intersectionEdges = new ArrayList<Edge>();
for (Surface s : surfaces) {
! //sort edges
! Collection<Edge> sEdges = s.getEdges();
! /*
! System.out.println("0");
Collection<Edge> tEdges = s.getEdges();
! if (tEdges.size()>0) {
! System.out.println("1");
! Edge current = (Edge)tEdges.toArray()[0];
! System.out.println("2");
! Collection<Edge> sEdges = new ArrayList<Edge>();
! System.out.println("3");
! sEdges.add(current);
! tEdges.remove(current);
! boolean res = true;
! while (res == true) {
! res = false;
! for (Edge e : tEdges) {
! System.out.println("4");
! if (e.getFrom().equals(current.getTo())) {
! System.out.println("next edge");
! current = e;
! sEdges.add(current.copy());
! tEdges.remove(current);
! res = true;
! if (tEdges.size() == 0) {
! res = false;
! }
! //end for loop
break;
! }
! if (e.getTo().equals(current.getTo())) {
! System.out.println("next edge inverse");
! Edge eRev = new Edge(e.getTo(),e.getFrom());
! current = eRev;
! sEdges.add(current.copy());
! tEdges.remove(e);
! res = true;
! if (tEdges.size() == 0) {
! res = false;
! }
! //end for loop
break;
}
}
}
! */
! List<Vertex> intersections = new ArrayList<Vertex>();
! for (Edge e : sEdges) {
! System.out.println("intersecting...");
! String result;
System.out.println(e.getFrom().toString());
System.out.println(e.getTo().toString());
! result = intersectLinePlaneBetweenPoints(e.getFrom(),e.getTo());
! if (result == "intersect") {
! intersections.add(intersection);
! }
! if (result == "both") {
! intersections.add(e.getFrom());
! intersections.add(e.getTo());
}
}
! //irregular polygons can have more than 2 intersections! CHECK!
! if (intersections.size()==2) {
! System.out.println(intersections.get(0).toString());
! System.out.println(intersections.get(1).toString());
! Edge intersectionEdge = new Edge(intersections.get(0).copy(), intersections.get(1).copy());
! intersectionEdges.add(intersectionEdge);
! sectionsSpace.add(intersectionEdge);
! sectionsSpace.update();
}
}
! //}
}
--- 33,239 ----
public void computeSection () {
! area = 0;
! intersectionEdges = new ArrayList<Edge>();
for (Surface s : surfaces) {
!
Collection<Edge> tEdges = s.getEdges();
! //sort edges
! List<Edge> sEdges = new ArrayList<Edge>();
! List<Edge> cEdges = new ArrayList<Edge>();
! Edge current = (Edge)tEdges.toArray()[0];
!
! //copy original Edge list
! for (Edge e: tEdges) {
! if (!e.equals(current)) {
! cEdges.add(e.copy());
! }
! }
!
! //sort edges
! sEdges.add(current);
! boolean check = true;
! while (check) {
! if (cEdges.size()>0) {
! Edge eAdd = new Edge();
! Edge eRem = new Edge();
! check = false;
! for (Edge e : cEdges) {
! if (current.getTo().equalEps(e.getFrom())) {
! eAdd = new Edge(e.getFrom(), e.getTo());
! eRem = e;
! check = true;
break;
! } else if (current.getTo().equalEps(e.getTo())) {
! eAdd = new Edge(e.getTo(), e.getFrom());
! eRem = e;
! check = true;
break;
+ }
+ }
+ sEdges.add(eAdd);
+ if (check) {
+ cEdges.remove(eRem);
+ }
+ current = eAdd;
+ } else {
+ check = false;
+ }
+ }
+
+ List<Vertex> intersections = new ArrayList<Vertex>();
+ HashMap<Vertex, Edge> iEdges = new HashMap();
+
+ for (Edge e : sEdges) {
+ String result;
+ result = intersectLinePlaneBetweenPoints(e.getFrom(),e.getTo());
+ if (result == "intersect") {
+ Vertex v = intersection.copy();
+ intersections.add(v);
+ iEdges.put(v, e);
+ }
+ if (result == "both") {
+ //check if edge is already in collection
+ if (!edgeExists(e)) {
+ intersectionEdges.add(e);
+ }
+ }
+ }
+ if (intersections.size()>=2) {
+ //add first elements add end of lists for looping
+ Vertex first = intersections.get(0).copy();
+ Edge fEdge = iEdges.get(intersections.get(0)).copy();
+ intersections.add(first);
+ iEdges.put(first, fEdge);
+
+ //irregular polygons can have more than 2 intersections! CHECK!
+ for (int i = 0; i <intersections.size()-1; i ++) {
+ Vertex a = intersections.get(i);
+ Vertex b = intersections.get(i+1);
+ Edge aE = iEdges.get(a);
+ Edge bE = iEdges.get(b);
+ if ((aE.getFrom().getZ()<sectionPlane.origin.getZ()) && (bE.getTo().getZ()<sectionPlane.origin.getZ())) {
+ Edge intersectionEdge = new Edge(a, b);
+ if (!edgeExists(intersectionEdge)) {
+ intersectionEdges.add(intersectionEdge);
}
}
}
! }
! //for (Edge e : intersectionEdges) {
! // sectionsSpace.add(e);
! //}
! }
!
! boolean search = true;
! while (search) {
! search = false;
! if (intersectionEdges.size()>0) {
! Edge current = intersectionEdges.get(0).copy();
! intersectionEdges.remove(0);
! boolean chain = true;
! List<Edge> surfaceEdges = new ArrayList<Edge>();
! surfaceEdges.add(current);
! while (chain) {
!
! if (intersectionEdges.size()>0) {
! Edge eAdd = new Edge();
! Edge eRem = new Edge();
! chain = false;
! for (Edge e : intersectionEdges) {
! if (current.getTo().equalEps(e.getFrom())) {
! eAdd = new Edge(current.getTo(), e.getTo());
! eRem = e;
! chain = true;
! break;
! } else if (current.getTo().equalEps(e.getTo())) {
! eAdd = new Edge(current.getTo(), e.getFrom());
! eRem = e;
! chain = true;
! break;
! }
! }
!
! if (chain) {
! surfaceEdges.add(eAdd);
! intersectionEdges.remove(eRem);
! current = eAdd;
! }
!
! } else {
! chain = false;
! }
!
! } //while chain
! //check if chain is a closed surface
! /*
! for (Edge e : surfaceEdges) {
! System.out.println(e.toString());
System.out.println(e.getFrom().toString());
System.out.println(e.getTo().toString());
! System.out.println("---");
! }
! */
! if (surfaceEdges.size()>2) {
! Edge firstEdge = surfaceEdges.get(0);
! Edge lastEdge = surfaceEdges.get(surfaceEdges.size()-1);
! //System.out.println(firstEdge.getFrom().toString());
! //System.out.println(lastEdge.getTo().toString());
! if (firstEdge.getFrom().equalEps(lastEdge.getTo())) {
! //surface is closed
! Surface s = new Surface(surfaceEdges);
! intersectionSurfaces.add(s);
}
}
! if (intersectionEdges.size()>2) {
! search = true;
}
}
! } //while search
! //check for holes in surfaces
! area = 0;
! for (Surface s : intersectionSurfaces) {
! area = area + s.getArea();
! PhysicsCollisionSurface pcs = new PhysicsCollisionSurface(s);
! for (Surface cs : intersectionSurfaces) {
! if (!s.equals(cs)) {
! Collection<Vertex> csVertices = cs.getVertices();
! boolean inside = true;
! for (Vertex v : csVertices) {
! Space guides = Item.createUnion("Guidelines");
! if (!pcs.pointInsidePolygon(v, guides)) {
! inside = false;
! break;
! }
! }
! if (inside) {
! //cs is a hole of s
! s.addHole(cs);
! area = area - (2 * cs.getArea());
! }
! }
! }
! }
!
! for (Surface s : intersectionSurfaces) {
! sectionsSpace.addAll(s);
! }
! sectionsSpace.update();
! System.out.println("Total Section Area = " + area);
! }
!
! public boolean edgeExists(Edge a) {
! boolean result = false;
! for (Edge b : intersectionEdges) {
! if ((a.getFrom().equalEps(b.getFrom())) && (a.getTo().equalEps(b.getTo()))) {
! result = true;
! break;
! }
! if ((a.getTo().equalEps(b.getFrom())) && (a.getFrom().equalEps(b.getTo()))) {
! result = true;
! break;
! }
! }
! return result;
}
|
|
From: Sebastian G. <sg...@us...> - 2012-05-06 15:15:02
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv8124/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsSurface.java PhysicsNet.java
PhysicsCollisionSurface.java PhysicsPlane.java
PhysicsParticle.java PhysicsPackage.java
Added Files:
PhysicsSection.java
Log Message:
coloured surfaces hanging chain
Index: PhysicsParticle.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsParticle.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PhysicsParticle.java 4 Apr 2012 09:16:21 -0000 1.3
--- PhysicsParticle.java 6 May 2012 15:15:00 -0000 1.4
***************
*** 92,96 ****
for (PhysicsCollisionSurface pcs : collisionSurfaces) {
//if (pcs.insideBoundingBox(nPos,step)) {
! if (pcs.collision(lastPos, nPos, guides)) {
//Quickfix
//vel = vel.scale(-1);
--- 92,97 ----
for (PhysicsCollisionSurface pcs : collisionSurfaces) {
//if (pcs.insideBoundingBox(nPos,step)) {
! Vertex intersection = new Vertex();
! if (pcs.collision(lastPos, nPos, guides, intersection)) {
//Quickfix
//vel = vel.scale(-1);
--- NEW FILE: PhysicsSection.java ---
package net.sourceforge.bprocessor.packages.physics;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import net.sourceforge.bprocessor.model.Edge;
import net.sourceforge.bprocessor.model.ParameterBlock;
import net.sourceforge.bprocessor.model.Selection;
import net.sourceforge.bprocessor.model.Space;
import net.sourceforge.bprocessor.model.Vertex;
import net.sourceforge.bprocessor.model.Surface;
public class PhysicsSection {
//properties
Space sectionsSpace;
Collection<Surface> surfaces = new ArrayList<Surface>();
PhysicsPlane sectionPlane;
Vertex intersection = new Vertex();
//constructors
PhysicsSection (Space sSpace, Space net, Vertex origin, Vertex normal) {
sectionsSpace = sSpace;
surfaces = net.getSurfaces();
sectionPlane = new PhysicsPlane(normal,origin);
}
public void computeSection () {
List<Edge> intersectionEdges = new ArrayList<Edge>();
for (Surface s : surfaces) {
//sort edges
Collection<Edge> sEdges = s.getEdges();
/*
System.out.println("0");
Collection<Edge> tEdges = s.getEdges();
if (tEdges.size()>0) {
System.out.println("1");
Edge current = (Edge)tEdges.toArray()[0];
System.out.println("2");
Collection<Edge> sEdges = new ArrayList<Edge>();
System.out.println("3");
sEdges.add(current);
tEdges.remove(current);
boolean res = true;
while (res == true) {
res = false;
for (Edge e : tEdges) {
System.out.println("4");
if (e.getFrom().equals(current.getTo())) {
System.out.println("next edge");
current = e;
sEdges.add(current.copy());
tEdges.remove(current);
res = true;
if (tEdges.size() == 0) {
res = false;
}
//end for loop
break;
}
if (e.getTo().equals(current.getTo())) {
System.out.println("next edge inverse");
Edge eRev = new Edge(e.getTo(),e.getFrom());
current = eRev;
sEdges.add(current.copy());
tEdges.remove(e);
res = true;
if (tEdges.size() == 0) {
res = false;
}
//end for loop
break;
}
}
}
*/
List<Vertex> intersections = new ArrayList<Vertex>();
for (Edge e : sEdges) {
System.out.println("intersecting...");
String result;
System.out.println(e.getFrom().toString());
System.out.println(e.getTo().toString());
result = intersectLinePlaneBetweenPoints(e.getFrom(),e.getTo());
if (result == "intersect") {
intersections.add(intersection);
}
if (result == "both") {
intersections.add(e.getFrom());
intersections.add(e.getTo());
}
}
//irregular polygons can have more than 2 intersections! CHECK!
if (intersections.size()==2) {
System.out.println(intersections.get(0).toString());
System.out.println(intersections.get(1).toString());
Edge intersectionEdge = new Edge(intersections.get(0).copy(), intersections.get(1).copy());
intersectionEdges.add(intersectionEdge);
sectionsSpace.add(intersectionEdge);
sectionsSpace.update();
}
}
//}
}
public String intersectLinePlaneBetweenPoints(Vertex A, Vertex B) {
//checks it the line from A to B intersect the surface plane between A and B
//http://paulbourke.net/geometry/planeline/
String result = "none";
Vertex p = sectionPlane.origin.copy();
Vertex n = sectionPlane.origin.copy();
Vertex subN = p.minus(A);
Vertex subD = B.minus(A);
double numerator = n.dot(subN);
double denomintator = n.dot(subD);
double u;
if (denomintator==0) {
//either no or endless solutions, check!
//check if B is part of plane
Vertex subP = B.minus(p);
double planeCheck = n.dot(subP);
if (planeCheck == 0) {
//endless intersections - return B as intersection
//B is part of plane
intersection = B.copy();
result = "both";
} else {
//line parallel to plane - no intersection
result = "none";
}
} else {
u = numerator / denomintator;
//compute intersection point
subD = subD.scale(u);
intersection = A.add(subD);
if ((u>=0) && (u<=1)) {
//when u between 0 and 1 then intersection point is between A and B
result = "intersect";
} else {
result = "outside";
}
}
return result;
}
}
Index: PhysicsCollisionSurface.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsCollisionSurface.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PhysicsCollisionSurface.java 28 Mar 2012 07:48:35 -0000 1.1
--- PhysicsCollisionSurface.java 6 May 2012 15:14:59 -0000 1.2
***************
*** 23,26 ****
--- 23,29 ----
public class PhysicsCollisionSurface {
+
+ boolean displayCollisionGuides = false;
+
Surface surface;
//Bounding Box
***************
*** 104,110 ****
intersection = B.copy();
result = true;
- System.out.println(" ");
- System.out.println("planecheck = 0");
- System.out.println(" ");
} else {
//line parallel to plane - no intersection
--- 107,110 ----
***************
*** 122,127 ****
}
if (u>0) {
! Edge eA = new Edge(A,intersection);
! guides.add(eA);
}
}
--- 122,129 ----
}
if (u>0) {
! if (displayCollisionGuides) {
! Edge eA = new Edge(A,intersection);
! guides.add(eA);
! }
}
}
***************
*** 159,166 ****
intersect = false;
double a = 1;
! if (cV1.equalEps(new Vertex (0,0,0))) {
! // no intersection
! System.out.println("cV1 = 0/0/0");
! } else {
Vertex cV1n = cV1.copy();
Vertex cV2n = cV2.copy();
--- 161,165 ----
intersect = false;
double a = 1;
! if (!cV1.equalEps(new Vertex (0,0,0))) {
Vertex cV1n = cV1.copy();
Vertex cV2n = cV2.copy();
***************
*** 191,212 ****
double b = vB.getX()/d2.getX();
! System.out.print("a=");
! System.out.print(a);
! System.out.print(" b=");
! System.out.print(b);
! System.out.print(" at point ");
! System.out.println(intersection.toString());
!
! Edge eA = new Edge(p2,intersection);
! guides.add(eA);
!
!
! //Vertex pd1 = p1.add(d1);
! //double distA1 = p1.distance(intersection);
! //double distB1 = pd1.distance(intersection);
! //Vertex pd2 = p2.add(d2);
! //double distA2 = p2.distance(intersection);
! //double distB2 = pd2.distance(intersection);
!
if ((a > 0) && (a < 1) && (b>0)) {
--- 190,197 ----
double b = vB.getX()/d2.getX();
! if (displayCollisionGuides) {
! Edge eA = new Edge(p2,intersection);
! guides.add(eA);
! }
if ((a > 0) && (a < 1) && (b>0)) {
***************
*** 220,224 ****
} else {
intersect = false;
- System.out.println(" Intersection outside edge");
}
}
--- 205,208 ----
***************
*** 226,231 ****
//end for
}
- System.out.print("number of intersections ");
- System.out.println(intersections);
//if number of intersections is odd then point inside polygon
if ((intersections % 2 == 1) && (intersections > 0)) {
--- 210,213 ----
***************
*** 235,250 ****
}
! public boolean collision(Vertex lastPos, Vertex newPos, Space guides) {
boolean result = false;
- Vertex intersection = new Vertex(0,0,0);
double step = newPos.distance(lastPos);
if (insideBoundingBox(newPos,step)) {
if (intersectLinePlaneBetweenPoints(lastPos, newPos, intersectionPoint, guides)) {
- System.out.println("---------------------------------------------------------------------------------------------------------------------------------------------------------------------------");
- System.out.println("found intersection with plane");
- System.out.println(intersectionPoint.toString());
if (pointInsidePolygon(intersectionPoint, guides)) {
- System.out.println("intersection inside polygon");
result = true;
}
}
--- 217,228 ----
}
! public boolean collision(Vertex lastPos, Vertex newPos, Space guides, Vertex intersection) {
boolean result = false;
double step = newPos.distance(lastPos);
if (insideBoundingBox(newPos,step)) {
if (intersectLinePlaneBetweenPoints(lastPos, newPos, intersectionPoint, guides)) {
if (pointInsidePolygon(intersectionPoint, guides)) {
result = true;
+ intersection = intersectionPoint.copy();
}
}
Index: PhysicsSurface.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsSurface.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PhysicsSurface.java 4 Apr 2012 09:16:21 -0000 1.2
--- PhysicsSurface.java 6 May 2012 15:14:59 -0000 1.3
***************
*** 19,23 ****
boolean displayPlanarization = false;
boolean displayDiagonals = false;
! boolean displayCircularMesh = true;
//properties
--- 19,24 ----
boolean displayPlanarization = false;
boolean displayDiagonals = false;
! boolean displayCircularMesh = false;
! boolean displayMovementGuides = true;
//properties
***************
*** 30,33 ****
--- 31,36 ----
double lastDiaLength;
double lastCircRad;
+ Vertex pos;
+ Vertex lastPos;
//constructors
***************
*** 64,67 ****
--- 67,73 ----
cl = cl / vertices.size();
lastCircRad = cl;
+ //collision
+ pos = bSurf.center().copy();
+ lastPos = bSurf.center().copy();
}
***************
*** 258,260 ****
--- 264,346 ----
}
}
+
+ void collision(List<PhysicsCollisionSurface> collisionSurfaces, boolean collisionOn, Space guides) {
+ //does not really work
+ /*
+ pos = bSurf.center().copy();
+ if (collisionOn) {
+ //COLLISION DETECTION
+ double step = pos.distance(lastPos);
+ Vertex move = lastPos.minus(pos);
+ Vertex intersection = new Vertex();
+ PhysicsCollisionSurface thisSurface = new PhysicsCollisionSurface(bSurf);
+ for (PhysicsCollisionSurface pcs : collisionSurfaces) {
+ Collection<Vertex> cVertices = pcs.surface.getVertices();
+ for (Vertex cV : cVertices) {
+ if (thisSurface.collision(cV, cV.add(move), guides, intersection)) {
+ System.out.println("collision");
+ if (displayMovementGuides) {
+ Edge eA = new Edge(cV,cV.add(move));
+ guides.add(eA);
+ }
+ Collection<Vertex> sVertices = bSurf.getVertices();
+ for (Vertex sV : sVertices) {
+ PhysicsParticle pp = particles.get(sV);
+ //change speed and velocity of all particles of the surface
+ double dist = sV.distance(intersection);
+ Vertex pMove = move.scale(dist);
+ Vertex pDirection = intersection.minus(sV);
+ double pX = pDirection.getX();
+ pDirection.normalize();
+ //check other points and add or subtract their acceleration
+ for (Vertex oV : sVertices) {
+ if (!oV.equals(sV)) {
+ Vertex oDirection = oV.minus(sV);
+ double a = oDirection.dot(pDirection);
+ Vertex oVProject = pDirection.scale(a);
+ double oDist = oV.distance(intersection);
+ Vertex oMove = move.scale(oDist);
+ //check where the point is in relation to the intersection point
+ double x = (oVProject.getX()-sV.getX())/pX;
+ if (x>1) {
+ //point is opposite of intersection point
+ pMove = pMove.minus(oMove);
+ } else {
+ pMove = pMove.add(oMove);
+ }
+ }
+ }
+ //check which direction pMove points
+ Vertex nMove = move.copy();
+ Vertex nPMove = pMove.copy();
+ nMove.normalize();
+ nPMove.normalize();
+ double dir = -1;
+ if (nMove.equalEps(nPMove)) {
+ dir = 1;
+ }
+ Vertex a = move.copy();
+ a.normalize();
+ pp.a = a.scale(pp.a.length()/4*dir*pMove.length());
+
+ Vertex vel = thisSurface.reflect(move);
+ vel.normalize();
+ vel.scaleIt(pp.vel.length()*dir*pMove.length()*-1*4);
+ pp.vel = vel.copy();
+
+ //pp.pos = pp.pos.minus(move);
+ //pp.nPos = pp.pos.minus(move);
+ //pp.lastPos = pp.pos.minus(move);
+ }
+ //recalc position and velocity
+ //nPos = new Vertex(pos.getX(),pos.getY(),pos.getZ());
+ //nPos = nPos.add(vel.scale(time));
+ //nPos = nPos.add(a.scale(0.5*time*time));
+ }
+ }
+ }
+ }
+ lastPos = pos.copy();
+ */
+ }
}
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -d -r1.13 -r1.14
*** PhysicsPackage.java 4 Apr 2012 09:16:21 -0000 1.13
--- PhysicsPackage.java 6 May 2012 15:15:00 -0000 1.14
***************
*** 181,190 ****
}
! private BooleanValue collisionON = new BooleanValue(true);
public BooleanValue getCollision() {
return collisionON;
}
public void setMaterialToPlanarity() {
Collection<Surface> nSurfaces = cNet.getSurfaces();
--- 181,205 ----
}
! private DoubleValue topologyForce = new DoubleValue(0);
! double oldTopologyForce = 0;
! public DoubleValue getTopologyForce() {
! return topologyForce;
! }
+ private BooleanValue collisionON = new BooleanValue(true);
public BooleanValue getCollision() {
return collisionON;
}
+ private BooleanValue sectionOn = new BooleanValue(true);
+ public BooleanValue getSectionOn() {
+ return sectionOn;
+ }
+
+ private DoubleValue sectionHeight = new DoubleValue(1.0);
+ public DoubleValue getSectionHeight() {
+ return sectionHeight;
+ }
+
public void setMaterialToPlanarity() {
Collection<Surface> nSurfaces = cNet.getSurfaces();
***************
*** 278,284 ****
}
// create physics Net
! pN = new PhysicsNet(cNet, gravity.getValue(), springConstant.getValue(),
! cDamp.getValue(), pDamp.getValue(), mass.getValue(), restLengthFactor
! .getValue(),bendingStiffness.getValue());
pN.toolFactor = factor.getValue();
pN.selectionDistance = selectionDistance.getValue();
--- 293,297 ----
}
// create physics Net
! pN = new PhysicsNet(cNet, gravity.getValue(), springConstant.getValue(),cDamp.getValue(), pDamp.getValue(), mass.getValue(), restLengthFactor.getValue(),bendingStiffness.getValue(),topologyForce.getValue());
pN.toolFactor = factor.getValue();
pN.selectionDistance = selectionDistance.getValue();
***************
*** 329,332 ****
--- 342,350 ----
}
oldBendingStiffness = bendingStiffness.getValue();
+ //topology stiffness
+ if (oldTopologyForce != topologyForce.getValue()) {
+ pN.updatetopologyStiffness(topologyForce.getValue());
+ }
+ oldTopologyForce = topologyForce.getValue();
// tool Factor
pN.toolFactor = factor.getValue();
***************
*** 356,359 ****
--- 374,378 ----
if (oldRestlengthFactor != restLengthFactor.getValue()) {
pN.updateBendingStiffnessSprings(restLengthFactor.getValue());
+ pN.updateTopologySprings(restLengthFactor.getValue());
oldRestlengthFactor = restLengthFactor.getValue();
}
***************
*** 372,379 ****
Space guides = Item.createUnion("Guidelines");
union.add(guides);
// change p-net
! pN.update(guides, timeStep.getValue(), equalConstant.getValue(), equalDamping.getValue(), rectConstant.getValue(), rectDamping.getValue(), planeConstant.getValue(), planeDamping.getValue(),
! volume.getValue(), bendingStiffness.getValue(), circularForce.getValue());
setMaterialToPlanarity();
union.add(cNet);
--- 391,401 ----
Space guides = Item.createUnion("Guidelines");
union.add(guides);
+
+ //add sections
+ Space sectionSpace = Item.createUnion("Sections");
+ union.add(sectionSpace);
// change p-net
! pN.update(guides, timeStep.getValue(), equalConstant.getValue(), equalDamping.getValue(), rectConstant.getValue(), rectDamping.getValue(), planeConstant.getValue(), planeDamping.getValue(),volume.getValue(), bendingStiffness.getValue(), circularForce.getValue(),topologyForce.getValue(),sectionOn.getValue(),sectionHeight.getValue(),sectionSpace);
setMaterialToPlanarity();
union.add(cNet);
***************
*** 654,657 ****
--- 676,684 ----
}
{
+ SliderControl control = new SliderControl(0, 100, skeleton.getTopologyForce(), this);
+ Label labelled = new Label("Topology Stiffness", control);
+ content.add(labelled.row());
+ }
+ {
SliderControl control = new SliderControl(0, 100, skeleton.getCircularForce(), this);
Label labelled = new Label("Circular Mesh", control);
***************
*** 727,730 ****
--- 754,777 ----
content.add(control.row());
}
+ {
+ BooleanControl control = new BooleanControl(skeleton.getSectionOn(), this, "Section");
+ content.add(control.row());
+ }
+ {
+ SliderControl control = new SliderControl(-20, 30, skeleton.getSectionHeight(),
+ this);
+ Label labelled = new Label("Section Height [m]", control);
+ content.add(control.row());
+ }
+ /*
+ private BooleanValue sectionOn = new BooleanValue(true);
+ public BooleanValue getSectionOn() {
+ return sectionOn;
+ }
+
+ private DoubleValue sectionHeight = new DoubleValue(1.0);
+ public DoubleValue getSectionHeight() {
+ return sectionHeight;
+ }*/
// add spacing
Index: PhysicsNet.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsNet.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -d -r1.6 -r1.7
*** PhysicsNet.java 4 Apr 2012 09:16:21 -0000 1.6
--- PhysicsNet.java 6 May 2012 15:14:59 -0000 1.7
***************
*** 14,17 ****
--- 14,18 ----
//display guide lines
boolean displayBendingStiffness = false;
+ boolean displayTopologyStiffness = false;
//properties
***************
*** 29,34 ****
HashMap<Vertex,PhysicsParticle> particles = new HashMap();
HashMap<Edge,PhysicsSpring> springs = new HashMap();
! HashMap<Surface, PhysicsSurface> surfaces = new HashMap();
! HashMap<Vertex, PhysicsParticle> particlesBS = new HashMap();
//Collision Detection
List<PhysicsCollisionSurface> collisionSurfaces = new ArrayList<PhysicsCollisionSurface>();
--- 30,34 ----
HashMap<Vertex,PhysicsParticle> particles = new HashMap();
HashMap<Edge,PhysicsSpring> springs = new HashMap();
! HashMap<Surface, PhysicsSurface> surfaces = new HashMap();
//Collision Detection
List<PhysicsCollisionSurface> collisionSurfaces = new ArrayList<PhysicsCollisionSurface>();
***************
*** 36,43 ****
List<PhysicsParticle> bendingStiffnessParticles = new ArrayList<PhysicsParticle>();
List<PhysicsSpring> bendingStiffnessSprings = new ArrayList<PhysicsSpring>();
!
//constructor
! PhysicsNet(Space cNet, double gravity, double spring_constant, double spring_damping, double particle_damping, double mass, double restLengthFactor, double bendingStiffness) {
Map pMap = new HashMap();
globalParticleMass = mass;
--- 36,47 ----
List<PhysicsParticle> bendingStiffnessParticles = new ArrayList<PhysicsParticle>();
List<PhysicsSpring> bendingStiffnessSprings = new ArrayList<PhysicsSpring>();
! HashMap<Vertex, PhysicsParticle> particlesBS = new HashMap();
! //Topology Stiffness
! List<PhysicsSpring> topologySprings = new ArrayList<PhysicsSpring>();
! //Section
! PhysicsSection pSection;
//constructor
! PhysicsNet(Space cNet, double gravity, double spring_constant, double spring_damping, double particle_damping, double mass, double restLengthFactor, double bendingStiffness, double topologyStiffness) {
Map pMap = new HashMap();
globalParticleMass = mass;
***************
*** 144,152 ****
}
ppC = particles.get(pC);
! ps = new PhysicsSpring(ppA,ppC,pC.distance(pA),bendingStiffness);
bendingStiffnessSprings.add(ps);
ppA.connectSpring(ps);
ppC.connectSpring(ps);
! ps = new PhysicsSpring(ppB,ppC,pC.distance(pB),bendingStiffness);
bendingStiffnessSprings.add(ps);
ppB.connectSpring(ps);
--- 148,156 ----
}
ppC = particles.get(pC);
! ps = new PhysicsSpring(ppA,ppC,pC.distance(pA),topologyStiffness);
bendingStiffnessSprings.add(ps);
ppA.connectSpring(ps);
ppC.connectSpring(ps);
! ps = new PhysicsSpring(ppB,ppC,pC.distance(pB),topologyStiffness);
bendingStiffnessSprings.add(ps);
ppB.connectSpring(ps);
***************
*** 154,157 ****
--- 158,188 ----
}
}
+ //create particles and springs for topology stiffness
+ bSurfaces = cNet.getSurfaces();
+ for (Surface s : bSurfaces) {
+ Collection<Vertex> sVertices = s.getVertices();
+ Collection<Edge> sEdges = s.getEdges();
+ for (Vertex v : sVertices) {
+ List<Edge> vEdges = new ArrayList<Edge>();
+ List<Vertex> vVertices = new ArrayList<Vertex>();
+ for (Edge e : sEdges) {
+ if (v.coincides(e.getFrom())) {
+ vEdges.add(e);
+ vVertices.add(e.getTo());
+ }
+ if (v.coincides(e.getTo())) {
+ vEdges.add(e);
+ vVertices.add(e.getFrom());
+ }
+ }
+ if (vVertices.size() == 2) {
+ PhysicsParticle ppA = particles.get(vVertices.get(0));
+ PhysicsParticle ppB = particles.get(vVertices.get(1));
+ PhysicsSpring ps = new PhysicsSpring(ppA,ppB,ppA.pos.distance(ppB.pos),topologyStiffness);
+ topologySprings.add(ps);
+ }
+ }
+ }
+
}
***************
*** 307,311 ****
}
! void update(Space guides, double time, double equalConstant, double equalDamping, double rectConstant, double rectDamping, double planeConstant, double planeDamping, double volume, double bendingStiffness, double circularForce) {
Iterator it;
//calculate surface forces
--- 338,355 ----
}
! void updateTopologySprings(double restLengthFactor) {
! for (PhysicsSpring pS : topologySprings) {
! pS.restLengthFactor = restLengthFactor;
! }
! }
!
! void updatetopologyStiffness(double topologyStiffness) {
! for (PhysicsSpring pS : topologySprings) {
! pS.c = topologyStiffness;
! }
! }
!
!
! void update(Space guides, double time, double equalConstant, double equalDamping, double rectConstant, double rectDamping, double planeConstant, double planeDamping, double volume, double bendingStiffness, double circularForce, double topologyStiffness, boolean sectionOn, double sectionHeight,Space SectionSpace) {
Iterator it;
//calculate surface forces
***************
*** 319,322 ****
--- 363,367 ----
s.planarize(guides, time, planeConstant, planeDamping);
s.circularSurface(guides, time, circularForce, rectDamping);
+ s.collision(collisionSurfaces, collisionOn, guides);
if ((volume>0) && (solid)) {
double normalForce = s.calcArea()*volume/currentVolume;
***************
*** 367,371 ****
--- 412,428 ----
}
}
+ //update springs for topology stiffness
+ for (PhysicsSpring pS : topologySprings) {
+ pS.update(time, spring_d);
+ if (displayTopologyStiffness) {
+ Edge eB = new Edge(pS.pA.pos, pS.pB.pos);
+ guides.add(eB);
+ }
+ }
cNet.update();
+ if (sectionOn) {
+ pSection = new PhysicsSection(SectionSpace,cNet,new Vertex(0,0,sectionHeight),new Vertex(0,0,1));
+ pSection.computeSection();
+ }
}
Index: PhysicsPlane.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPlane.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PhysicsPlane.java 23 May 2011 12:25:17 -0000 1.2
--- PhysicsPlane.java 6 May 2012 15:14:59 -0000 1.3
***************
*** 91,95 ****
double k = n/d;
i = p.add(dir.scale(k));
- //System.out.println("found intersection");
return i;
}
--- 91,94 ----
|
|
From: Michael L. <he...@us...> - 2012-04-17 08:09:37
|
Update of /cvsroot/bprocessor/gui/src/net/sourceforge/bprocessor/gui
In directory vz-cvs-4.sog:/tmp/cvs-serv5342/src/net/sourceforge/bprocessor/gui
Modified Files:
GUI.java
Log Message:
Improve open
Index: GUI.java
===================================================================
RCS file: /cvsroot/bprocessor/gui/src/net/sourceforge/bprocessor/gui/GUI.java,v
retrieving revision 1.129
retrieving revision 1.130
diff -C2 -d -r1.129 -r1.130
*** GUI.java 27 Jul 2011 07:19:36 -0000 1.129
--- GUI.java 17 Apr 2012 08:09:35 -0000 1.130
***************
*** 927,932 ****
for (Operation current : operations) {
current.perform();
}
- Project.getInstance().changed();
}
--- 927,932 ----
for (Operation current : operations) {
current.perform();
+ Project.getInstance().changed();
}
}
***************
*** 1008,1012 ****
presented = true;
Project.getInstance().checkpoint();
! Project.getInstance().changed();
Timer sensorTimer = new Timer (1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
--- 1008,1012 ----
presented = true;
Project.getInstance().checkpoint();
! Project.getInstance().changed(false);
Timer sensorTimer = new Timer (1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
|
|
From: Michael L. <he...@us...> - 2012-04-17 08:09:34
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model
In directory vz-cvs-4.sog:/tmp/cvs-serv5334/src/net/sourceforge/bprocessor/model
Modified Files:
Project.java
Log Message:
Improve open
Index: Project.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Project.java,v
retrieving revision 1.209
retrieving revision 1.210
diff -C2 -d -r1.209 -r1.210
*** Project.java 30 Dec 2011 12:53:24 -0000 1.209
--- Project.java 17 Apr 2012 08:09:32 -0000 1.210
***************
*** 476,479 ****
--- 476,490 ----
*/
public void changed() {
+ changed(false);
+ }
+
+ /**
+ *
+ * @param error boolean
+ */
+ public void changed(boolean error) {
+ if (error) {
+ throw new Error("spurious change");
+ }
changed(this);
}
|
|
From: Michael L. <he...@us...> - 2012-04-16 10:57:00
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/plugin
In directory vz-cvs-4.sog:/tmp/cvs-serv32672/src/net/sourceforge/bprocessor/model/plugin
Modified Files:
FacadePackage.java
Log Message:
Coloring of edges and vertices
Index: FacadePackage.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/plugin/FacadePackage.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** FacadePackage.java 11 Mar 2011 08:38:09 -0000 1.2
--- FacadePackage.java 16 Apr 2012 10:56:58 -0000 1.3
***************
*** 11,14 ****
--- 11,15 ----
import net.sourceforge.bprocessor.model.Edge;
import net.sourceforge.bprocessor.model.Item;
+ import net.sourceforge.bprocessor.model.ParameterBlock;
import net.sourceforge.bprocessor.model.Space;
import net.sourceforge.bprocessor.model.Surface;
***************
*** 204,207 ****
--- 205,220 ----
}
}
+ {
+ for (Edge current : union.getEdges()) {
+ ParameterBlock parameters = new ParameterBlock();
+ parameters.putString("paint", "#0FFF0F");
+ current.setParameters(parameters);
+ }
+ for (Vertex current : union.getVertices()) {
+ ParameterBlock parameters = new ParameterBlock();
+ parameters.putString("paint", "#0FF0FF");
+ current.setParameters(parameters);
+ }
+ }
}
}
|
|
From: Michael L. <he...@us...> - 2012-04-16 10:56:57
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory vz-cvs-4.sog:/tmp/cvs-serv32657/src/net/sourceforge/bprocessor/gl/view
Modified Files:
Display.java
Log Message:
Coloring of edges and vertices
Index: Display.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/Display.java,v
retrieving revision 1.112
retrieving revision 1.113
diff -C2 -d -r1.112 -r1.113
*** Display.java 15 Jun 2011 13:23:11 -0000 1.112
--- Display.java 16 Apr 2012 10:56:54 -0000 1.113
***************
*** 40,43 ****
--- 40,44 ----
import net.sourceforge.bprocessor.model.Instance;
import net.sourceforge.bprocessor.model.Line;
+ import net.sourceforge.bprocessor.model.ParameterBlock;
import net.sourceforge.bprocessor.model.Project;
import net.sourceforge.bprocessor.model.Selection;
***************
*** 426,436 ****
draw(vertex);
}
! private static void paintVertices(Collection<Vertex> vertices, float[] color, float size) {
! gl.glColor3fv(color, 0);
! gl.glPointSize(size);
! for (Vertex current : vertices) {
! draw(current);
! }
! }
private static void selectVertices(Collection<Vertex> vertices) {
for (Vertex current : vertices) {
--- 427,431 ----
draw(vertex);
}
!
private static void selectVertices(Collection<Vertex> vertices) {
for (Vertex current : vertices) {
***************
*** 454,461 ****
--- 449,515 ----
draw(edge);
}
+ private static void paintVertices(Collection<Vertex> vertices, float[] color, float size) {
+ gl.glColor3fv(color, 0);
+ gl.glPointSize(size);
+ boolean changed = false;
+ for (Vertex current : vertices) {
+ if (changed) {
+ gl.glColor3fv(color, 0);
+ changed = false;
+ }
+ ParameterBlock parameters = current.getParameters();
+ if (parameters != null) {
+ String paint = parameters.getString("paint");
+ if (paint.length() > 0) {
+ char first = paint.charAt(0);
+ if (first == '#') {
+ String reds = paint.substring(1, 3);
+ String greens = paint.substring(3, 5);
+ String blues = paint.substring(5, 7);
+ float red = Integer.parseInt(reds, 16);
+ float green = Integer.parseInt(greens, 16);
+ float blue = Integer.parseInt(blues, 16);
+ float r = red / 255.0f;
+ float g = green / 255.0f;
+ float b = blue / 255.0f;
+ float[] c = new float[]{r, g, b};
+ gl.glColor3fv(c, 0);
+ changed = true;
+ }
+ }
+ }
+ draw(current);
+ }
+ }
private static void paintEdges(Collection<Edge> edges, float[] color, float size) {
gl.glColor3fv(color, 0);
gl.glLineWidth(size);
+ boolean changed = false;
for (Edge current : edges) {
+ if (changed) {
+ gl.glColor3fv(color, 0);
+ changed = false;
+ }
+ ParameterBlock parameters = current.getParameters();
+ if (parameters != null) {
+ String paint = parameters.getString("paint");
+ if (paint.length() > 0) {
+ char first = paint.charAt(0);
+ if (first == '#') {
+ String reds = paint.substring(1, 3);
+ String greens = paint.substring(3, 5);
+ String blues = paint.substring(5, 7);
+ float red = Integer.parseInt(reds, 16);
+ float green = Integer.parseInt(greens, 16);
+ float blue = Integer.parseInt(blues, 16);
+ float r = red / 255.0f;
+ float g = green / 255.0f;
+ float b = blue / 255.0f;
+ float[] c = new float[]{r, g, b};
+ gl.glColor3fv(c, 0);
+ changed = true;
+ }
+ }
+ }
draw(current);
}
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv31827/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsSurface.java PhysicsNet.java PhysicsSpring.java
PhysicsParticle.java PhysicsPackage.java
Log Message:
bending stiffness added to physics
Index: PhysicsParticle.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsParticle.java,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PhysicsParticle.java 28 Mar 2012 07:48:35 -0000 1.2
--- PhysicsParticle.java 4 Apr 2012 09:16:21 -0000 1.3
***************
*** 7,10 ****
--- 7,13 ----
public class PhysicsParticle {
+
+ //display guides
+ boolean displayMovementGuides = false;
//properties
***************
*** 93,98 ****
//vel = vel.scale(-1);
//a = a.scale(-1);
! Edge eA = new Edge(firstPos,nPos);
! guides.add(eA);
vel = pcs.reflect(vel);
a = pcs.reflect(a);
--- 96,103 ----
//vel = vel.scale(-1);
//a = a.scale(-1);
! if (displayMovementGuides) {
! Edge eA = new Edge(firstPos,nPos);
! guides.add(eA);
! }
vel = pcs.reflect(vel);
a = pcs.reflect(a);
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -d -r1.12 -r1.13
*** PhysicsPackage.java 28 Mar 2012 07:48:35 -0000 1.12
--- PhysicsPackage.java 4 Apr 2012 09:16:21 -0000 1.13
***************
*** 35,38 ****
--- 35,39 ----
import net.sourceforge.bprocessor.model.Geometric;
import net.sourceforge.bprocessor.model.Item;
+ import net.sourceforge.bprocessor.model.Material;
import net.sourceforge.bprocessor.model.Operation;
import net.sourceforge.bprocessor.model.Space;
***************
*** 62,65 ****
--- 63,69 ----
boolean firstTime = false;
+
+ Material m = new Material();
+ Material[] matGR= new Material[511];
HashMap<Edge, Edge> edges = new HashMap();
***************
*** 99,103 ****
private DoubleValue restLengthFactor = new DoubleValue(1.0);
!
public DoubleValue getRestLengthFactor() {
return restLengthFactor;
--- 103,107 ----
private DoubleValue restLengthFactor = new DoubleValue(1.0);
! double oldRestlengthFactor = 1.0;
public DoubleValue getRestLengthFactor() {
return restLengthFactor;
***************
*** 165,168 ****
--- 169,184 ----
}
+ private DoubleValue bendingStiffness = new DoubleValue(0);
+ double oldBendingStiffness = 0;
+ public DoubleValue getBendingStiffness() {
+ return bendingStiffness;
+ }
+
+ private DoubleValue circularForce = new DoubleValue(0);
+ double oldCircularForce = 0;
+ public DoubleValue getCircularForce() {
+ return circularForce;
+ }
+
private BooleanValue collisionON = new BooleanValue(true);
***************
*** 170,176 ****
return collisionON;
}
public void initialize(Space net) {
!
super.initializeNoItem(net);
// create copy of b-Net
--- 186,251 ----
return collisionON;
}
+
+ public void setMaterialToPlanarity() {
+ Collection<Surface> nSurfaces = cNet.getSurfaces();
+ for (Surface s : nSurfaces) {
+ double dist = 0;
+ double length = 0;
+ s.calcNormals();
+ PhysicsPlane pp = new PhysicsPlane(s.normal(),s.center());
+ Collection<Vertex> sVertices = s.getVertices();
+ for (Vertex v : sVertices) {
+ Vertex d = pp.PointNormalToPlane(v);
+ if (d.length() > dist) {
+ dist = d.length();
+ }
+ }
+ Collection<Edge> sEdges = s.getEdges();
+ for (Edge e : sEdges) {
+ Vertex a = e.getFrom();
+ Vertex b = e.getTo();
+ double l = a.distance(b);
+ if (l>length) {
+ length = l;
+ }
+ }
+ long i = Math.round(5*510*dist/length);
+ if (i>510) {
+ i = 510;
+ }
+ //Material m = Project.getInstance().findMaterial("materialRG-"+i);
+ Material m = matGR[(int)i];
+ s.setFrontMaterial(m);
+ s.setBackMaterial(m);
+ }
+ }
+ public void createMaterials() {
+ for (int i = 0; i <=255; i ++) {
+ matGR[i] = Project.getInstance().findMaterial("materialRG-"+i);
+ if (matGR[i] == null) {
+ matGR[i] = new Material();
+ matGR[i].setName("materialRG-"+i);
+ float[] diffuseColor = new float[]{i/255f, 1.0f, 0.0f};
+ matGR[i].setColor(diffuseColor);
+ Project.getInstance().add(matGR[i]);
+ }
+ }
+ for (int i = 255; i >=0; i --) {
+ matGR[510-i] = Project.getInstance().findMaterial("materialRG-"+(510-i));
+ if (matGR[510-i] == null) {
+ matGR[510-i] = new Material();
+ matGR[510-i].setName("materialRG-"+(510-i));
+ float[] diffuseColor = new float[]{1.0f, i/255f, 0.0f};
+ matGR[510-i].setColor(diffuseColor);
+ Project.getInstance().add(matGR[510-i]);
+ }
+ }
+ }
+
public void initialize(Space net) {
! // create Materials
! createMaterials();
! //###############################################################
super.initializeNoItem(net);
// create copy of b-Net
***************
*** 179,182 ****
--- 254,258 ----
cNet = net.copy(map);
cNet.setName(net.getName() + " - Physics Net");
+ setMaterialToPlanarity();
// cNet.edit();
// copy corner points
***************
*** 204,208 ****
pN = new PhysicsNet(cNet, gravity.getValue(), springConstant.getValue(),
cDamp.getValue(), pDamp.getValue(), mass.getValue(), restLengthFactor
! .getValue());
pN.toolFactor = factor.getValue();
pN.selectionDistance = selectionDistance.getValue();
--- 280,284 ----
pN = new PhysicsNet(cNet, gravity.getValue(), springConstant.getValue(),
cDamp.getValue(), pDamp.getValue(), mass.getValue(), restLengthFactor
! .getValue(),bendingStiffness.getValue());
pN.toolFactor = factor.getValue();
pN.selectionDistance = selectionDistance.getValue();
***************
*** 214,217 ****
--- 290,295 ----
// find other elements for collision detection
+ // search for other surfaces as well or only at main level?
+ // ##############################################################
Space top = Project.getInstance().world();
//get spaces...top.getElements();
***************
*** 222,227 ****
pN.addCollisionSurface(s);
}
- System.out.print("so many surfaces ");
- System.out.println(aSurf.size());
}
--- 300,303 ----
***************
*** 248,251 ****
--- 324,332 ----
}
oldSpringConstant = springConstant.getValue();
+ //bending stiffness
+ if (oldBendingStiffness != bendingStiffness.getValue()) {
+ pN.updateBendingStiffness(bendingStiffness.getValue());
+ }
+ oldBendingStiffness = bendingStiffness.getValue();
// tool Factor
pN.toolFactor = factor.getValue();
***************
*** 273,276 ****
--- 354,361 ----
pN.setRestLengthFactor(edges.get(bE), restLengthFactor.getValue());
}
+ if (oldRestlengthFactor != restLengthFactor.getValue()) {
+ pN.updateBendingStiffnessSprings(restLengthFactor.getValue());
+ oldRestlengthFactor = restLengthFactor.getValue();
+ }
// add a union space containing all new elements
***************
*** 289,298 ****
// change p-net
! pN.update(guides, timeStep.getValue(), equalConstant.getValue(),
! equalDamping.getValue(), rectConstant.getValue(), rectDamping
! .getValue(), planeConstant.getValue(), planeDamping.getValue(),
! volume.getValue());
union.add(cNet);
-
}
}
--- 374,381 ----
// change p-net
! pN.update(guides, timeStep.getValue(), equalConstant.getValue(), equalDamping.getValue(), rectConstant.getValue(), rectDamping.getValue(), planeConstant.getValue(), planeDamping.getValue(),
! volume.getValue(), bendingStiffness.getValue(), circularForce.getValue());
! setMaterialToPlanarity();
union.add(cNet);
}
}
***************
*** 412,419 ****
Vertex bV = (Vertex) g;
double bDist = bV.distance(pN.sOrigin);
! pN
! .scaleParticleMass(
! bV,
! 1 + (((pN.selectionDistance - bDist) / pN.selectionDistance) * pN.toolFactor));
}
}
--- 495,499 ----
Vertex bV = (Vertex) g;
double bDist = bV.distance(pN.sOrigin);
! pN.scaleParticleMass(bV,1 + (((pN.selectionDistance - bDist) / pN.selectionDistance) * pN.toolFactor));
}
}
***************
*** 568,571 ****
--- 648,661 ----
content.add(labelled.row());
}
+ {
+ SliderControl control = new SliderControl(0, 100, skeleton.getBendingStiffness(), this);
+ Label labelled = new Label("Bending Stiffness", control);
+ content.add(labelled.row());
+ }
+ {
+ SliderControl control = new SliderControl(0, 100, skeleton.getCircularForce(), this);
+ Label labelled = new Label("Circular Mesh", control);
+ content.add(labelled.row());
+ }
/*
* { SliderControl control = new SliderControl(0, 50,
Index: PhysicsSpring.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsSpring.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PhysicsSpring.java 16 May 2011 06:11:05 -0000 1.1
--- PhysicsSpring.java 4 Apr 2012 09:16:21 -0000 1.2
***************
*** 6,9 ****
--- 6,12 ----
public class PhysicsSpring {
+ //display guides
+ boolean displayBendingStiffness = false;
+
//properties
PhysicsParticle pA; //Particle at one end of the spring
***************
*** 39,42 ****
--- 42,46 ----
sf_damped = 0;
restLengthScale = 1.0;
+ restLengthFactor = 1.0;
}
Index: PhysicsSurface.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsSurface.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** PhysicsSurface.java 16 May 2011 06:11:05 -0000 1.1
--- PhysicsSurface.java 4 Apr 2012 09:16:21 -0000 1.2
***************
*** 15,18 ****
--- 15,25 ----
public class PhysicsSurface {
+ //diplay guides
+ boolean displayNormalForce = false;
+ boolean displayPlanarization = false;
+ boolean displayDiagonals = false;
+ boolean displayCircularMesh = true;
+
+ //properties
Surface bSurf; //the original bNet Surface
PhysicsPlane avPlane; //average Plane of Surface
***************
*** 22,25 ****
--- 29,33 ----
double lastLength;
double lastDiaLength;
+ double lastCircRad;
//constructors
***************
*** 44,50 ****
--- 52,67 ----
}
lastDiaLength = dl;
+ //calculate plane distance for each particle
for (Vertex v : vertices) {
lastPlaneDist.put(v,new Double(0));
}
+ //calculate current circular raidus
+ double cl = 0.0;
+ Vertex center = bSurf.center();
+ for (Vertex v : vertices) {
+ cl = cl + center.distance(v);
+ }
+ cl = cl / vertices.size();
+ lastCircRad = cl;
}
***************
*** 86,118 ****
bSurf.calcNormals();
return bSurf.normal();
- /*
- //* @Michael: algorithm for Normal seems to be so complicated... why?
- Vertex nV = new Vertex(0,0,0);
- List<Vertex> vertices = bSurf.getVertices();
- double num = vertices.size();
- if (num>3) {
- //if surface has more than 3 vertices
- //add first two vertices to the end of the list for loop
- vertices.add(vertices.get(0));
- vertices.add(vertices.get(1));
- for (int i=0; i<num; i++) {
- Vertex a = vertices.get(0).minus(vertices.get(1));
- Vertex b = vertices.get(2).minus(vertices.get(1));
- Vertex n = a.cross(b);
- n.normalize();
- nV = nV.add(n);
- }
- nV.normalize();
- }
- if (num == 3) {
- //surface is triangular - there is only one normal
- Vertex a = vertices.get(0).minus(vertices.get(1));
- Vertex b = vertices.get(2).minus(vertices.get(1));
- nV = nV.add(a.cross(b));
- //nV = nV.scale(1/3);
- nV.normalize();
- }
- return nV;
- */
}
--- 103,106 ----
***************
*** 146,151 ****
//display force vector
Vertex c = bSurf.center();
! Edge eA = new Edge(c,c.add(n));
! guides.add(eA);
for (Vertex v : vertices) {
//get corresponding Particle
--- 134,141 ----
//display force vector
Vertex c = bSurf.center();
! if (displayNormalForce) {
! Edge eA = new Edge(c,c.add(n));
! guides.add(eA);
! }
for (Vertex v : vertices) {
//get corresponding Particle
***************
*** 177,186 ****
pA.addForce(nV);
//display force vector
! Edge eA = new Edge(v,avPlane.PointProjectToPlane(v));
! guides.add(eA);
}
}
}
void quadToRect(Space guides, double time, double spring_constant, double spring_damping) {
//make a quad surface rectangular by equalizing the length of both diagonals
--- 167,179 ----
pA.addForce(nV);
//display force vector
! if (displayPlanarization) {
! Edge eA = new Edge(v,avPlane.PointProjectToPlane(v));
! guides.add(eA);
! }
}
}
}
+
void quadToRect(Space guides, double time, double spring_constant, double spring_damping) {
//make a quad surface rectangular by equalizing the length of both diagonals
***************
*** 191,199 ****
ArrayList<Edge> dEdges = new ArrayList<Edge>();
Edge eA = new Edge(vertices.get(0), vertices.get(2));
- guides.add(eA);
dEdges.add(eA);
Edge eB = new Edge(vertices.get(1), vertices.get(3));
- guides.add(eB);
dEdges.add(eB);
//get average diagonal length
double dl = (eA.getLength() + eB.getLength()) / 2;
--- 184,194 ----
ArrayList<Edge> dEdges = new ArrayList<Edge>();
Edge eA = new Edge(vertices.get(0), vertices.get(2));
dEdges.add(eA);
Edge eB = new Edge(vertices.get(1), vertices.get(3));
dEdges.add(eB);
+ if (displayDiagonals) {
+ guides.add(eA);
+ guides.add(eB);
+ }
//get average diagonal length
double dl = (eA.getLength() + eB.getLength()) / 2;
***************
*** 224,228 ****
--- 219,260 ----
}
}
+ }
+
+ void circularSurface(Space guides, double time, double spring_constant, double spring_damping) {
+ Vertex center = bSurf.center();
+ List<Vertex> vertices = bSurf.getVertices();
+ //desired length of "radius" center - vertex
+ double dl = 0.0;
+ //create List of Edges from center to each Vertex
+ ArrayList<Edge> cEdges = new ArrayList<Edge>();
+ for (Vertex v : vertices) {
+ Edge e = new Edge(center, v);
+ cEdges.add(e);
+ if (displayCircularMesh) {
+ guides.add(e);
+ }
+ dl = dl + e.getLength();
+ }
+ dl = dl / vertices.size();
+ //calculate force on vertices
+ for (Edge e : cEdges) {
+ //calculate force on particles using spring equation incl. damping
+ double sf = (dl-e.getLength())*spring_constant;
+ sf = sf + ((dl-lastCircRad)*spring_damping / time);
+ lastCircRad = dl;
+
+ //get Vector from A to B
+ Vertex fB = e.getTo().minus(e.getFrom());
+
+ //normalize force Vector
+ fB.normalize();
+ //scale force Vectors to force value
+ fB.scaleIt(sf);
+
+ //add forces to corresponding particles
+ PhysicsParticle pB = particles.get(e.getTo());
+ pB.addForce(fB);
+ }
}
}
Index: PhysicsNet.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsNet.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** PhysicsNet.java 28 Mar 2012 07:48:35 -0000 1.5
--- PhysicsNet.java 4 Apr 2012 09:16:21 -0000 1.6
***************
*** 12,15 ****
--- 12,18 ----
public class PhysicsNet {
+ //display guide lines
+ boolean displayBendingStiffness = false;
+
//properties
Space cNet;
***************
*** 27,35 ****
HashMap<Edge,PhysicsSpring> springs = new HashMap();
HashMap<Surface, PhysicsSurface> surfaces = new HashMap();
//Collision Detection
List<PhysicsCollisionSurface> collisionSurfaces = new ArrayList<PhysicsCollisionSurface>();
//constructor
! PhysicsNet(Space cNet, double gravity, double spring_constant, double spring_damping, double particle_damping, double mass, double restLengthFactor) {
Map pMap = new HashMap();
globalParticleMass = mass;
--- 30,43 ----
HashMap<Edge,PhysicsSpring> springs = new HashMap();
HashMap<Surface, PhysicsSurface> surfaces = new HashMap();
+ HashMap<Vertex, PhysicsParticle> particlesBS = new HashMap();
//Collision Detection
List<PhysicsCollisionSurface> collisionSurfaces = new ArrayList<PhysicsCollisionSurface>();
+ //Bending Stiffness
+ List<PhysicsParticle> bendingStiffnessParticles = new ArrayList<PhysicsParticle>();
+ List<PhysicsSpring> bendingStiffnessSprings = new ArrayList<PhysicsSpring>();
+
//constructor
! PhysicsNet(Space cNet, double gravity, double spring_constant, double spring_damping, double particle_damping, double mass, double restLengthFactor, double bendingStiffness) {
Map pMap = new HashMap();
globalParticleMass = mass;
***************
*** 61,65 ****
pA.connectSpring(pS);
pB.connectSpring(pS);
! counter++;;
saveSpringParameter(bE,pS);
}
--- 69,73 ----
pA.connectSpring(pS);
pB.connectSpring(pS);
! counter++;
saveSpringParameter(bE,pS);
}
***************
*** 86,89 ****
--- 94,192 ----
surfaces.put(bS, pS);
}
+ //create Particles and Springs for bending stiffness
+ bVertices = cNet.getVertices();
+ for (Vertex v : bVertices){
+ //create Particles
+ //find average Normal for all surrounding surfaces
+ Collection<Surface> vSurfaces = v.getSurfaces();
+ Vertex normal = new Vertex(0,0,0);
+ for (Surface s : vSurfaces) {
+ s.calcNormals();
+ normal = normal.add(s.normal());
+ }
+ double l = 0;
+ Collection<Edge> vEdges = v.getEdges();
+ for (Edge e : vEdges) {
+ l = l + e.getLength();
+ }
+ l = l / vEdges.size();
+ normal.normalize();
+ normal = normal.scale(l);
+ Vertex pA = v.add(normal);
+ Vertex pB = v.minus(normal);
+ PhysicsParticle ppA = new PhysicsParticle(pA.copy(), new Vertex(0,0,0), new Vertex(0,0,0), mass, counter);
+ ppA.fix = false;
+ ppA.pos.setCorner(false);
+ counter++;
+ PhysicsParticle ppB = new PhysicsParticle(pB.copy(), new Vertex(0,0,0), new Vertex(0,0,0), mass, counter);
+ ppB.fix = false;
+ ppB.pos.setCorner(false);
+ counter++;
+ bendingStiffnessParticles.add(ppA);
+ bendingStiffnessParticles.add(ppB);
+ //add to Hashmap to move particle when no bending stiffness in place
+ particlesBS.put(v, ppA);
+ particlesBS.put(v, ppB);
+ //create according springs
+ PhysicsParticle ppC = particles.get(v);
+ PhysicsSpring ps = new PhysicsSpring(ppA,ppC,l,bendingStiffness);
+ bendingStiffnessSprings.add(ps);
+ ppA.connectSpring(ps);
+ ppC.connectSpring(ps);
+ ps = new PhysicsSpring(ppB,ppC,l,bendingStiffness);
+ bendingStiffnessSprings.add(ps);
+ ppB.connectSpring(ps);
+ ppC.connectSpring(ps);
+ for (Edge e : vEdges) {
+ Vertex pC = e.getFrom();
+ if (pC.equalEps(v)) {
+ pC = e.getTo();
+ }
+ ppC = particles.get(pC);
+ ps = new PhysicsSpring(ppA,ppC,pC.distance(pA),bendingStiffness);
+ bendingStiffnessSprings.add(ps);
+ ppA.connectSpring(ps);
+ ppC.connectSpring(ps);
+ ps = new PhysicsSpring(ppB,ppC,pC.distance(pB),bendingStiffness);
+ bendingStiffnessSprings.add(ps);
+ ppB.connectSpring(ps);
+ ppC.connectSpring(ps);
+ }
+ }
+ }
+
+ public void repositionBendingStiffnessParticles() {
+ Iterator it = particlesBS.entrySet().iterator();
+ long counter = 0;
+ while (it.hasNext()) {
+ Map.Entry ee = (Map.Entry)it.next();
+ PhysicsParticle pp = (PhysicsParticle)ee.getValue();
+ Vertex v = (Vertex)ee.getKey();
+ double mult = 1.0;
+ if (counter%2==1) {
+ mult = -1.0;
+ }
+ //find average Normal for all surrounding surfaces
+ Collection<Surface> vSurfaces = v.getSurfaces();
+ Vertex normal = new Vertex(0,0,0);
+ for (Surface s : vSurfaces) {
+ s.calcNormals();
+ normal = normal.add(s.normal());
+ }
+ double l = 0;
+ Collection<Edge> vEdges = v.getEdges();
+ for (Edge e : vEdges) {
+ l = l + e.getLength();
+ }
+ l = l / vEdges.size();
+ l = l * mult;
+ normal.normalize();
+ normal = normal.scale(l);
+ Vertex pA = v.add(normal);
+ pp.pos = pA.copy();
+ pp.nPos = pA.copy();
+ pp.lastPos = pA.copy();
+ counter ++;
+ }
}
***************
*** 192,196 ****
}
! void update(Space guides, double time, double equalConstant, double equalDamping, double rectConstant, double rectDamping, double planeConstant, double planeDamping, double volume) {
Iterator it;
//calculate surface forces
--- 295,311 ----
}
! void updateBendingStiffnessSprings(double restLengthFactor) {
! for (PhysicsSpring pS : bendingStiffnessSprings) {
! pS.restLengthFactor = restLengthFactor;
! }
! }
!
! void updateBendingStiffness(double bendingStiffness) {
! for (PhysicsSpring pS : bendingStiffnessSprings) {
! pS.c = bendingStiffness;
! }
! }
!
! void update(Space guides, double time, double equalConstant, double equalDamping, double rectConstant, double rectDamping, double planeConstant, double planeDamping, double volume, double bendingStiffness, double circularForce) {
Iterator it;
//calculate surface forces
***************
*** 203,206 ****
--- 318,322 ----
s.quadToRect(guides, time, rectConstant, rectDamping);
s.planarize(guides, time, planeConstant, planeDamping);
+ s.circularSurface(guides, time, circularForce, rectDamping);
if ((volume>0) && (solid)) {
double normalForce = s.calcArea()*volume/currentVolume;
***************
*** 216,219 ****
--- 332,344 ----
p.move(time, gravity, particle_d,collisionSurfaces,collisionOn,guides);
}
+ //calculate particle movement for bending stiffness
+ if (bendingStiffness!=0) {
+ for (PhysicsParticle pp : bendingStiffnessParticles) {
+ pp.move(time, 0, particle_d,collisionSurfaces,false,guides);
+ pp.pos = pp.nPos.copy();
+ }
+ } else {
+ repositionBendingStiffnessParticles();
+ }
//move nodes of b-net to particle positions
it = particles.entrySet().iterator();
***************
*** 234,237 ****
--- 359,370 ----
saveSpringParameter(e,s);
}
+ //update springs for bending stiffness
+ for (PhysicsSpring pS : bendingStiffnessSprings) {
+ pS.update(time, spring_d);
+ if (displayBendingStiffness) {
+ Edge eB = new Edge(pS.pA.pos, pS.pB.pos);
+ guides.add(eB);
+ }
+ }
cNet.update();
}
|
|
From: Sebastian G. <sg...@us...> - 2012-03-28 07:48:37
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/skeleton
In directory vz-cvs-4.sog:/tmp/cvs-serv26174/src/net/sourceforge/bprocessor/packages/skeleton
Modified Files:
SkeletonPackage.java
Log Message:
started implementing collision detection
Index: SkeletonPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/skeleton/SkeletonPackage.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** SkeletonPackage.java 27 Jul 2011 07:19:39 -0000 1.9
--- SkeletonPackage.java 28 Mar 2012 07:48:35 -0000 1.10
***************
*** 230,234 ****
}
{
-
BooleanControl control = new BooleanControl(skeleton.getActive(), this, "Active");
content.add(control.row());
--- 230,233 ----
|
|
From: Sebastian G. <sg...@us...> - 2012-03-06 09:28:18
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory vz-cvs-4.sog:/tmp/cvs-serv15613/src/net/sourceforge/bprocessor/gl/view
Modified Files:
PopupMenu.java
Log Message:
hanging chain tool - change weight and change restlength / selection implemented
tool to aligh normals when faces are planar
Index: PopupMenu.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/PopupMenu.java,v
retrieving revision 1.57
retrieving revision 1.58
diff -C2 -d -r1.57 -r1.58
*** PopupMenu.java 29 Dec 2011 17:59:47 -0000 1.57
--- PopupMenu.java 6 Mar 2012 09:28:16 -0000 1.58
***************
*** 15,18 ****
--- 15,19 ----
import java.util.LinkedList;
import java.util.List;
+ import java.util.Map;
import java.util.Set;
***************
*** 58,61 ****
--- 59,63 ----
import net.sourceforge.bprocessor.model.Command.BoundingSphere;
import net.sourceforge.bprocessor.model.modellor.Modellor;
+ //import net.sourceforge.bprocessor.packages.physics.PhysicsParticle;
import org.apache.log4j.Logger;
***************
*** 543,546 ****
--- 545,600 ----
menu.add(flip);
}
+ //Submenu for normal flip algorithms
+ {
+ JMenu normalMenu = new JMenu("normals");
+ {
+ AbstractAction flip = new GeometricMenuAction(arguments, "align planar") {
+ public void actionPerformed(ActionEvent arg0) {
+ //Selection.primary().clear();
+ Collection<Vertex> normals = new LinkedList();
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ Vertex n = surface.normal();
+ //loop existing vertices
+ Boolean exists = false;
+ for (Vertex v : normals) {
+ if (exists==false) {
+ if (v.coincides(n)) {
+ exists = true;
+ }
+ Vertex flip = n.scale(-1);
+ if (v.coincides(flip)) {
+ exists = true;
+ }
+ }
+ }
+ if (exists==false) {
+ normals.add(n);
+ }
+ }
+ }
+ //loop backwards and align normals
+ for (Vertex v : normals) {
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ Vertex n = surface.normal();
+ if (v.coincides(n)) {
+ //ok
+ }
+ Vertex flip = n.scale(-1);
+ if (v.coincides(flip)) {
+ surface.flip();
+ }
+ }
+ }
+ }
+ }
+ };
+ normalMenu.add(flip);
+ }
+ menu.add(normalMenu);
+ }
//Submenu for subdivision algorithms
***************
*** 928,931 ****
--- 982,986 ----
AbstractAction catmullClark = new GeometricMenuAction(arguments, "CatmullClark") {
//http://en.wikipedia.org/wiki/Catmull%E2%80%93Clark_subdivision_surface
+ //CLEANING OF NORMALS!2
Space owner;
***************
*** 1077,1085 ****
if ((f.coincides(corner)) || (corner.getEdges().size()>corner.getSurfaces().size())) {
! //this does not yet work...
! n = 5.0;
! x = (1 * r.getX() + (2) * corner.getX()) / 3;
! y = (1 * r.getY() + (2) * corner.getY()) / 3;
! z = (1 * r.getZ() + (2) * corner.getZ()) / 3;
} else {
x = (f.getX() + 2 * r.getX() + (n-3) * corner.getX()) / n;
--- 1132,1157 ----
if ((f.coincides(corner)) || (corner.getEdges().size()>corner.getSurfaces().size())) {
! //subdivision as averaging along 2d edge
! r = new Vertex(0,0,0);
! double count = 0.0;
! Collection<Edge> cEdges = corner.getEdges();
! for (Edge e : cEdges) {
! Collection<Surface> cSurfaces = e.getSurfaces();
! if (cSurfaces.size()==1) {
! //only count in edge edges
! r = r.add(e.center());
! count = count + 1.0;
! }
! }
! r = r.add(corner.copy());
! r = r.scale(1/(count+1.0));
!
! //x = (1 * r.getX() + (2) * corner.getX()) / 3;
! //y = (1 * r.getY() + (2) * corner.getY()) / 3;
! //z = (1 * r.getZ() + (2) * corner.getZ()) / 3;
!
! x = r.getX();
! y = r.getY();
! z = r.getZ();
} else {
x = (f.getX() + 2 * r.getX() + (n-3) * corner.getX()) / n;
|
|
From: Sebastian G. <sg...@us...> - 2012-03-06 09:28:15
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv15606/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsNet.java PhysicsPackage.java
Log Message:
hanging chain tool - change weight and change restlength / selection implemented
tool to aligh normals when faces are planar
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -d -r1.10 -r1.11
*** PhysicsPackage.java 21 Dec 2011 05:31:53 -0000 1.10
--- PhysicsPackage.java 6 Mar 2012 09:28:13 -0000 1.11
***************
*** 40,64 ****
import net.sourceforge.bprocessor.model.Vertex;
import net.sourceforge.bprocessor.model.plugin.NetCommand;
import net.sourceforge.bprocessor.packages.skeleton.*;
! /*
! * To Do
! * Michael:
! * parameters additional parameters should be saved when added, change function , the display of the value is not automatically updated.
! * Plugin Parameters and Selection Parameters: they should not be displayed in the same panel. Rather split the existing panel. So there can be a selection and a tool running at the same time and all information is visible.
! * Sliders, Checkboxes, etc. for the plugin controls
! * A plugin button should be able to run a tool with a selection / mouse interaction.
! *
! * Modify new net while simulation is running, i.e. corner property, etc.
! * Planarity and regularity of panels, add bending stiffness!
! * Rectangularity needs improvement, bending stiffness!
! * Add parameters to b-net and save them! - see above, Michael, add and save parameters to original net
! * Subdivision
! * Selection => parameter changes to vertices and edges, not only global
! * Volume calculation and inflation force
! * Auto-detect corners of net (vertices that are only connected to 2 edges)
! * time settings and parameters
! */
public class PhysicsPackage {
--- 40,48 ----
import net.sourceforge.bprocessor.model.Vertex;
import net.sourceforge.bprocessor.model.plugin.NetCommand;
+ import net.sourceforge.bprocessor.model.Selection;
import net.sourceforge.bprocessor.packages.skeleton.*;
!
public class PhysicsPackage {
***************
*** 143,147 ****
--- 127,136 ----
return factor;
}
+ private DoubleValue selectionDistance = new DoubleValue(3);
+ public DoubleValue getSelectionDistance() {
+ return selectionDistance;
+ }
+
public void initialize(Space net) {
***************
*** 177,180 ****
--- 166,170 ----
pN = new PhysicsNet(cNet, gravity.getValue(), springConstant.getValue(), cDamp.getValue(), pDamp.getValue(), mass.getValue(), restLengthFactor.getValue());
pN.toolFactor = factor.getValue();
+ pN.selectionDistance = selectionDistance.getValue();
panel = new ControlPanel(this,cNet,pN,edges);
***************
*** 208,211 ****
--- 198,202 ----
//tool Factor
pN.toolFactor = factor.getValue();
+ pN.selectionDistance = selectionDistance.getValue();
//track changes of bNet and modify Physics Net accordingly
***************
*** 221,224 ****
--- 212,216 ----
}
}
+
//update edges
Collection<Edge> bEdges = net.getEdges();
***************
*** 277,286 ****
protected void moved(MouseEvent event) {
findTarget(event);
if (target instanceof Geometric) {
! if (target instanceof Surface) {
! editor.getView().makeTarget(target);
}
! if (target instanceof Edge) {
! editor.getView().makeTarget(target);
}
}
--- 269,282 ----
protected void moved(MouseEvent event) {
findTarget(event);
+ Selection.primary().clear();
if (target instanceof Geometric) {
! if (target instanceof Vertex) {
! //editor.getView().makeTarget(target);
! Vertex bV = (Vertex) target;
! pN.extendSelectionFromVertex(bV, pN.selectionDistance);
}
! if (target instanceof Surface) {
! Surface bS = (Surface) target;
! pN.extendSelectionFromVertex(bS, pN.selectionDistance);
}
}
***************
*** 289,293 ****
@Override
protected void pressed(MouseEvent event) {
! findTarget(event);
if (target instanceof Geometric) {
if (target instanceof Surface) {
--- 285,298 ----
@Override
protected void pressed(MouseEvent event) {
! Iterator it = Selection.primary().iterator();
! while (it.hasNext()) {
! Geometric g = (Geometric)it.next();
! if (g instanceof Edge) {
! Edge bE = (Edge)g;
! double bDist = bE.center().distance(pN.sOrigin);
! pN.scaleRestLengthFactor(bE,1+(((pN.selectionDistance-bDist)/pN.selectionDistance)*pN.toolFactor/4));
! }
! }
! /*
if (target instanceof Geometric) {
if (target instanceof Surface) {
***************
*** 305,308 ****
--- 310,314 ----
}
}
+ */
}
***************
*** 315,319 ****
--- 321,327 ----
public static class physicsChangeWeightTool extends AbstractTool {
+ //import net.sourceforge.bprocessor.packages.physics.*;
PhysicsNet pN; //Physics Net = Simulation Object
+
public physicsChangeWeightTool() {
// TODO Auto-generated constructor stub
***************
*** 333,339 ****
protected void moved(MouseEvent event) {
findTarget(event);
if (target instanceof Geometric) {
if (target instanceof Vertex) {
! editor.getView().makeTarget(target);
}
}
--- 341,354 ----
protected void moved(MouseEvent event) {
findTarget(event);
+ Selection.primary().clear();
if (target instanceof Geometric) {
if (target instanceof Vertex) {
! //editor.getView().makeTarget(target);
! Vertex bV = (Vertex) target;
! pN.extendSelectionFromVertex(bV, pN.selectionDistance);
! }
! if (target instanceof Surface) {
! Surface bS = (Surface) target;
! pN.extendSelectionFromVertex(bS, pN.selectionDistance);
}
}
***************
*** 342,354 ****
@Override
protected void pressed(MouseEvent event) {
! findTarget(event);
! if (target instanceof Geometric) {
! if (target instanceof Vertex) {
! editor.getView().makeTarget(target);
! Vertex bV = (Vertex) target;
! pN.scaleParticleMass(bV,1+(pN.toolFactor/4));
}
}
!
}
--- 357,371 ----
@Override
protected void pressed(MouseEvent event) {
!
! Iterator it = Selection.primary().iterator();
! while (it.hasNext()) {
! Geometric g = (Geometric)it.next();
! if (g instanceof Vertex) {
! Vertex bV = (Vertex)g;
! double bDist = bV.distance(pN.sOrigin);
! pN.scaleParticleMass(bV,1+(((pN.selectionDistance-bDist)/pN.selectionDistance)*pN.toolFactor));
}
}
! //pN.scaleParticleMass(bV,1+(pN.toolFactor/4));
}
***************
*** 358,361 ****
--- 375,381 ----
}
+
+
+
}
***************
*** 458,515 ****
content.add(buttonRow);
}
- {
- // add tool buttons
- Box buttonRow = Box.createHorizontalBox();
- {
- buttonRow.add(Box.createHorizontalStrut(5));
- JButton toolBtnA = new JButton(new SkeletonAction("p-spring.png") {
- public void actionPerformed(ActionEvent e) {
- Editor.instance().changeTool(toolSprings);
- }
- });
- toolBtnA.setMargin(new Insets(1, 1, 1, 1));
- toolBtnA.setMaximumSize(toolBtnA.getMinimumSize());
- buttonRow.add(toolBtnA);
- }
- {
- buttonRow.add(Box.createHorizontalStrut(5));
- JButton toolBtnB = new JButton(new SkeletonAction("p-weight.png") {
- public void actionPerformed(ActionEvent e) {
- Editor.instance().changeTool(toolWeights);
- }
- });
- toolBtnB.setMargin(new Insets(1, 1, 1, 1));
- toolBtnB.setMaximumSize(toolBtnB.getMinimumSize());
- buttonRow.add(toolBtnB);
- }
! buttonRow.add(Box.createHorizontalGlue());
! content.add(buttonRow);
! }
//add sliders
{
! SliderControl control = new SliderControl(0.0001, 0.1, skeleton.getTimeStep(), this);
! Label labelled = new Label("Calc Time Step [s]", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(-1, 1, skeleton.getFactor(), this);
! Label labelled = new Label("Tool Setting", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(-9.81, 9.81, skeleton.getGravity(), this);
! Label labelled = new Label("Gravity [m/s2]", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(0, 30, skeleton.getMass(), this);
! Label labelled = new Label("Particle Mass [kg]", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(0, 50, skeleton.getPDamp(), this);
! Label labelled = new Label("Particle Damping [N sec/m]", control);
content.add(labelled.row());
}
--- 478,537 ----
content.add(buttonRow);
}
!
//add sliders
{
! SliderControl control = new SliderControl(-9.81, 9.81, skeleton.getGravity(), this);
! Label labelled = new Label("Gravity [m/s2]", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(0, 100, skeleton.getEqualConstant(), this);
! Label labelled = new Label("Equal Edges Spring Constant ec [N/m]", control);
! content.add(labelled.row());
! }
! /*{
! SliderControl control = new SliderControl(0, 50, skeleton.getEqualDamping(), this);
! Label labelled = new Label("Equal Edges Damping [N sec/m]", control);
! content.add(labelled.row());
! }*/
! {
! SliderControl control = new SliderControl(0, 100, skeleton.getRectConstant(), this);
! Label labelled = new Label("Equal Diagonals Spring Constant rc [N/m]", control);
content.add(labelled.row());
}
+ /*{
+ SliderControl control = new SliderControl(0, 50, skeleton.getRectDamping(), this);
+ Label labelled = new Label("Equal Diagonals Damping [N sec/m]", control);
+ content.add(labelled.row());
+ }*/
{
! SliderControl control = new SliderControl(0, 100, skeleton.getPlaneConstant(), this);
! Label labelled = new Label("Planarity Spring Constant pc [N/m]", control);
content.add(labelled.row());
}
+ /*{
+ SliderControl control = new SliderControl(0, 50, skeleton.getPlaneDamping(), this);
+ Label labelled = new Label("Planarity Damping [N sec/m]", control);
+ content.add(labelled.row());
+ }*/
{
! SliderControl control = new SliderControl(0, 1000, skeleton.getVolume(), this);
! Label labelled = new Label("Volume [m3]", control);
content.add(labelled.row());
}
+ // add spacing
{
! Box spacing = Box.createHorizontalBox();
! {
! spacing.add(Box.createHorizontalStrut(15));
! spacing.add(Box.createVerticalStrut(15));
! }
! content.add(spacing);
! }
! {
! SliderControl control = new SliderControl(0, 30, skeleton.getMass(), this);
! Label labelled = new Label("Particle Mass [kg]", control);
content.add(labelled.row());
}
***************
*** 529,565 ****
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(0, 100, skeleton.getEqualConstant(), this);
! Label labelled = new Label("Equal Edges Spring Constant ec [N/m]", control);
! content.add(labelled.row());
}
- /*{
- SliderControl control = new SliderControl(0, 50, skeleton.getEqualDamping(), this);
- Label labelled = new Label("Equal Edges Damping [N sec/m]", control);
- content.add(labelled.row());
- }*/
{
! SliderControl control = new SliderControl(0, 100, skeleton.getRectConstant(), this);
! Label labelled = new Label("Equal Diagonals Spring Constant rc [N/m]", control);
content.add(labelled.row());
}
- /*{
- SliderControl control = new SliderControl(0, 50, skeleton.getRectDamping(), this);
- Label labelled = new Label("Equal Diagonals Damping [N sec/m]", control);
- content.add(labelled.row());
- }*/
{
! SliderControl control = new SliderControl(0, 100, skeleton.getPlaneConstant(), this);
! Label labelled = new Label("Planarity Spring Constant pc [N/m]", control);
content.add(labelled.row());
}
! /*{
! SliderControl control = new SliderControl(0, 50, skeleton.getPlaneDamping(), this);
! Label labelled = new Label("Planarity Damping [N sec/m]", control);
content.add(labelled.row());
! }*/
{
! SliderControl control = new SliderControl(0, 1000, skeleton.getVolume(), this);
! Label labelled = new Label("Volume [m3]", control);
content.add(labelled.row());
}
--- 551,621 ----
content.add(labelled.row());
}
+ // add spacing
{
! Box spacing = Box.createHorizontalBox();
! {
! spacing.add(Box.createHorizontalStrut(15));
! spacing.add(Box.createVerticalStrut(15));
! }
! content.add(spacing);
}
{
! SliderControl control = new SliderControl(0.0001, 0.1, skeleton.getTimeStep(), this);
! Label labelled = new Label("Calc Time Step [s]", control);
content.add(labelled.row());
}
{
! SliderControl control = new SliderControl(0, 50, skeleton.getPDamp(), this);
! Label labelled = new Label("Particle Damping [N sec/m]", control);
content.add(labelled.row());
}
!
! // add spacing
! {
! Box spacing = Box.createHorizontalBox();
! {
! spacing.add(Box.createHorizontalStrut(15));
! spacing.add(Box.createVerticalStrut(15));
! }
! content.add(spacing);
! }
!
! // add tool buttons
! {
! Box buttonRow = Box.createHorizontalBox();
! {
! buttonRow.add(Box.createHorizontalStrut(5));
! JButton toolBtnA = new JButton(new SkeletonAction("p-spring.png") {
! public void actionPerformed(ActionEvent e) {
! Editor.instance().changeTool(toolSprings);
! }
! });
! toolBtnA.setMargin(new Insets(1, 1, 1, 1));
! toolBtnA.setMaximumSize(toolBtnA.getMinimumSize());
! buttonRow.add(toolBtnA);
! }
! {
! buttonRow.add(Box.createHorizontalStrut(5));
! JButton toolBtnB = new JButton(new SkeletonAction("p-weight.png") {
! public void actionPerformed(ActionEvent e) {
! Editor.instance().changeTool(toolWeights);
! }
! });
! toolBtnB.setMargin(new Insets(1, 1, 1, 1));
! toolBtnB.setMaximumSize(toolBtnB.getMinimumSize());
! buttonRow.add(toolBtnB);
! }
!
! buttonRow.add(Box.createHorizontalGlue());
! content.add(buttonRow);
! }
! {
! SliderControl control = new SliderControl(-1, 1, skeleton.getFactor(), this);
! Label labelled = new Label("Tool Setting", control);
content.add(labelled.row());
! }
{
! SliderControl control = new SliderControl(0.0001, 500, skeleton.getSelectionDistance(), this);
! Label labelled = new Label("Extend Selection Distance", control);
content.add(labelled.row());
}
Index: PhysicsNet.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsNet.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -d -r1.3 -r1.4
*** PhysicsNet.java 5 Jun 2011 19:57:14 -0000 1.3
--- PhysicsNet.java 6 Mar 2012 09:28:13 -0000 1.4
***************
*** 5,8 ****
--- 5,9 ----
import net.sourceforge.bprocessor.model.Edge;
import net.sourceforge.bprocessor.model.ParameterBlock;
+ import net.sourceforge.bprocessor.model.Selection;
import net.sourceforge.bprocessor.model.Space;
import net.sourceforge.bprocessor.model.Vertex;
***************
*** 20,23 ****
--- 21,26 ----
boolean solid = false;
double toolFactor = 0.0;
+ double selectionDistance = 4;
+ Vertex sOrigin = new Vertex(0,0,0); //selection Center / Origin
HashMap<Vertex,PhysicsParticle> particles = new HashMap();
HashMap<Edge,PhysicsSpring> springs = new HashMap();
***************
*** 257,259 ****
--- 260,301 ----
return v;
}
+
+ public void extendSelectionFromVertex(Vertex bV,double dist) {
+ Collection<Surface> tSurfaces= bV.getSurfaces();
+ sOrigin = bV;
+ for (Surface s : tSurfaces) {
+ Selection.primary().add(s);
+ extendSelectionFromSurface(s,sOrigin, dist);
+ }
+ }
+
+ public void extendSelectionFromVertex(Surface bS,double dist) {
+ Selection.primary().add(bS);
+ sOrigin = bS.center();
+ extendSelectionFromSurface(bS,sOrigin, dist);
+ }
+
+ public void extendSelectionFromSurface(Surface bS, Vertex origin, double dist) {
+ Collection<Vertex> tVertices = bS.getVertices();
+ for (Vertex bV : tVertices) {
+ Collection<Surface> tSurfaces= bV.getSurfaces();
+ for (Surface s : tSurfaces) {
+ if (Selection.primary().contains(s)==false) {
+ Collection<Vertex> sVertices = s.getVertices();
+ Boolean allIn = true;
+ for (Vertex v : tVertices) {
+ if (Math.abs(origin.distance(v))>dist) {
+ allIn = false;
+ }
+ }
+ if (allIn==true) {
+ Selection.primary().add(s);
+ Selection.primary().addAll(s.getVertices());
+ Selection.primary().addAll(s.getEdges());
+ extendSelectionFromSurface(s,origin, dist);
+ }
+ }
+ }
+ }
+ }
}
\ No newline at end of file
|
|
From: Michael L. <he...@us...> - 2011-12-30 12:53:31
|
Update of /cvsroot/bprocessor/gui/src/net/sourceforge/bprocessor/gui/treeview
In directory vz-cvs-4.sog:/tmp/cvs-serv5915/src/net/sourceforge/bprocessor/gui/treeview
Modified Files:
GenericTreeView.java
Log Message:
Fixed bug with section planes
Index: GenericTreeView.java
===================================================================
RCS file: /cvsroot/bprocessor/gui/src/net/sourceforge/bprocessor/gui/treeview/GenericTreeView.java,v
retrieving revision 1.158
retrieving revision 1.159
diff -C2 -d -r1.158 -r1.159
*** GenericTreeView.java 27 Jul 2011 07:19:36 -0000 1.158
--- GenericTreeView.java 30 Dec 2011 12:53:29 -0000 1.159
***************
*** 1215,1221 ****
public EntityNode nodeFor(Object entity) {
Item space = (Item) entity;
! if (space.isVoid()) {
! return new VoidNode(space);
! } else if (space instanceof Space) {
return new ContainerNode((Space) space);
} else if (space instanceof Instance) {
--- 1215,1219 ----
public EntityNode nodeFor(Object entity) {
Item space = (Item) entity;
! if (space instanceof Space) {
return new ContainerNode((Space) space);
} else if (space instanceof Instance) {
***************
*** 1412,1418 ****
public EntityNode nodeFor(Object entity) {
Item space = (Item) entity;
! if (space.isVoid()) {
! return new VoidNode(space);
! } else if (space instanceof Space) {
return new ContainerNode((Space) space);
} else if (space instanceof Instance) {
--- 1410,1414 ----
public EntityNode nodeFor(Object entity) {
Item space = (Item) entity;
! if (space instanceof Space) {
return new ContainerNode((Space) space);
} else if (space instanceof Instance) {
|
|
From: Michael L. <he...@us...> - 2011-12-30 12:53:27
|
Update of /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model
In directory vz-cvs-4.sog:/tmp/cvs-serv5891/src/net/sourceforge/bprocessor/model
Modified Files:
SpaceAnalysis.java Surface.java SurfaceAnalysis.java Item.java
Project.java
Log Message:
Fixed bug with section planes
Index: SpaceAnalysis.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/SpaceAnalysis.java,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** SpaceAnalysis.java 25 Jun 2009 22:17:30 -0000 1.15
--- SpaceAnalysis.java 30 Dec 2011 12:53:24 -0000 1.16
***************
*** 153,157 ****
mark.add(surface);
Space assigned = getSide(surface, side);
! if (assigned.isVoid()) {
for (Edge current : surface.getEdges()) {
List<Surface> surfaces = edgemap.get(current);
--- 153,157 ----
mark.add(surface);
Space assigned = getSide(surface, side);
! if (assigned != null) {
for (Edge current : surface.getEdges()) {
List<Surface> surfaces = edgemap.get(current);
***************
*** 166,170 ****
subsume(new Element(selected, other));
Space container = getSide(selected, other);
! if (!container.isVoid()) {
setSide(surface, side, container);
}
--- 166,170 ----
subsume(new Element(selected, other));
Space container = getSide(selected, other);
! if (container != null) {
setSide(surface, side, container);
}
Index: Surface.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Surface.java,v
retrieving revision 1.229
retrieving revision 1.230
diff -C2 -d -r1.229 -r1.230
*** Surface.java 6 Mar 2011 23:13:27 -0000 1.229
--- Surface.java 30 Dec 2011 12:53:24 -0000 1.230
***************
*** 219,226 ****
Space front = surface.getFrontDomain();
Space back = surface.getBackDomain();
! if (!front.isVoid()) {
incident.add(front);
}
! if (!(back.isVoid() || (front == back))) {
incident.add(back);
}
--- 219,226 ----
Space front = surface.getFrontDomain();
Space back = surface.getBackDomain();
! if (front != null) {
incident.add(front);
}
! if (!((back == null) || (front == back))) {
incident.add(back);
}
Index: Item.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Item.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** Item.java 6 Mar 2011 23:13:27 -0000 1.11
--- Item.java 30 Dec 2011 12:53:24 -0000 1.12
***************
*** 194,205 ****
/**
- * Returns true if this space is the empty space.
- * @return true if this space is the empty space
- */
- public boolean isVoid() {
- return false;
- }
-
- /**
* Sets material
* @param material The new material
--- 194,197 ----
***************
*** 224,229 ****
if (material != null) {
return material;
- } else if (isVoid()) {
- return Defaults.getVoidMaterial();
} else if (isFunctionalSpace()) {
return Defaults.getFunctionalMaterial();
--- 216,219 ----
***************
*** 693,699 ****
return Project.getInstance().getName();
} else {
- if (this.isVoid()) {
- return "empty";
- }
String lvl = getKindName();
if (lvl == null) {
--- 683,686 ----
Index: Project.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/Project.java,v
retrieving revision 1.208
retrieving revision 1.209
diff -C2 -d -r1.208 -r1.209
*** Project.java 29 Jun 2011 13:56:08 -0000 1.208
--- Project.java 30 Dec 2011 12:53:24 -0000 1.209
***************
*** 1362,1366 ****
List<Space> constructs = new LinkedList();
for (Space current : spaces) {
! if (!current.isVoid() && current.isConstructionSpace()) {
constructs.add(current);
}
--- 1362,1366 ----
List<Space> constructs = new LinkedList();
for (Space current : spaces) {
! if (current.isConstructionSpace()) {
constructs.add(current);
}
***************
*** 1581,1585 ****
List<Space> constructs = new LinkedList();
for (Space current : spaces) {
! if (!current.isVoid() && current.isConstructionSpace()) {
constructs.add(current);
}
--- 1581,1585 ----
List<Space> constructs = new LinkedList();
for (Space current : spaces) {
! if (current.isConstructionSpace()) {
constructs.add(current);
}
Index: SurfaceAnalysis.java
===================================================================
RCS file: /cvsroot/bprocessor/model/src/net/sourceforge/bprocessor/model/SurfaceAnalysis.java,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -d -r1.19 -r1.20
*** SurfaceAnalysis.java 25 Jun 2009 22:17:30 -0000 1.19
--- SurfaceAnalysis.java 30 Dec 2011 12:53:24 -0000 1.20
***************
*** 325,333 ****
private boolean isVoid(Item space) {
! if (space != null) {
! return space.isVoid();
! } else {
! return true;
! }
}
--- 325,329 ----
private boolean isVoid(Item space) {
! return (space == null);
}
|
|
From: Sebastian G. <sg...@us...> - 2011-12-29 17:59:55
|
Update of /cvsroot/bprocessor/build
In directory vz-cvs-4.sog:/tmp/cvs-serv5749
Added Files:
output.txt
Log Message:
catmull clark runs - still minor mistakes computed when subdividing 2d shapes...
--- NEW FILE: output.txt ---
C:\Program Files\Java\jdk1.6.0_17
Buildfile: build.xml
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\build\dist
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\model\build
[delete] Deleting directory c:\users\sebastian\workspace\model\xml
[delete] Deleting directory c:\users\sebastian\workspace\model\dist
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\bscript\build
[delete] Deleting directory c:\users\sebastian\workspace\bscript\dist
[delete] Deleting directory c:\users\sebastian\workspace\bscript\src\net\sourceforge\bprocessor\parser
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\gui\build
[delete] Deleting directory c:\users\sebastian\workspace\gui\dist
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\gl\build
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\facade\build
init:
clean:
[delete] Deleting directory c:\users\sebastian\workspace\bprocessor\build
init:
dist:
[mkdir] Created dir: c:\users\sebastian\workspace\build\dist
[mkdir] Created dir: c:\users\sebastian\workspace\build\dist\core
[mkdir] Created dir: c:\users\sebastian\workspace\build\dist\library
[mkdir] Created dir: c:\users\sebastian\workspace\build\dist\plugins
init:
prepare:
[echo] build.compiler = modern
[echo] java.home = c:\Program Files\Java\jdk1.6.0_17\jre
[echo] user.home = C:\Users\Sebastian
[echo] java.class.path = c:/apache_ant/lib/ant-launcher.jar;c:\users\sebastian\workspace\build\.\;c:\Program Files\Java\jre6\lib\ext\QTJava.zip;c:\apache_ant\lib\ant-antlr.jar;c:\apache_ant\lib\ant-apache-bcel.jar;c:\apache_ant\lib\ant-apache-bsf.jar;c:\apache_ant\lib\ant-apache-log4j.jar;c:\apache_ant\lib\ant-apache-oro.jar;c:\apache_ant\lib\ant-apache-regexp.jar;c:\apache_ant\lib\ant-apache-resolver.jar;c:\apache_ant\lib\ant-commons-logging.jar;c:\apache_ant\lib\ant-commons-net.jar;c:\apache_ant\lib\ant-jai.jar;c:\apache_ant\lib\ant-javamail.jar;c:\apache_ant\lib\ant-jdepend.jar;c:\apache_ant\lib\ant-jmf.jar;c:\apache_ant\lib\ant-jsch.jar;c:\apache_ant\lib\ant-junit.jar;c:\apache_ant\lib\ant-launcher.jar;c:\apache_ant\lib\ant-netrexx.jar;c:\apache_ant\lib\ant-nodeps.jar;c:\apache_ant\lib\ant-starteam.jar;c:\apache_ant\lib\ant-stylebook.jar;c:\apache_ant\lib\ant-swing.jar;c:\apache_ant\lib\ant-testutil.jar;c:\apache_ant\lib\ant-trax.jar;c:\apache_ant\lib\ant-weblogic.jar;c:\apache_ant\lib\ant.jar;c:\apache_ant\lib\xercesImpl.jar;c:\apache_ant\lib\xml-apis.jar;c:\Program Files\Java\jdk1.6.0_17\lib\tools.jar
[echo]
[mkdir] Created dir: c:\users\sebastian\workspace\model\build
checkstyle:
[checkstyle] Running Checkstyle 4.2 on 88 files
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:34:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:39:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:43:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:56:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1718: Kind von label bei Einrücktiefe 12 nicht an korrekter Einrücktiefe 10
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1719: Kind von label bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1719: for bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1720: Kind von for bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1721: if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1722: if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1723: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1724: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1725: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1726: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1727: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1728: if rcurly bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1729: if rcurly bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1730: for rcurly bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1737: Kind von label bei Einrücktiefe 12 nicht an korrekter Einrücktiefe 10
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1738: Kind von label bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1738: for bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1739: Kind von for bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1740: if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1741: if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1742: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1743: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1744: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1745: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1746: Kind von if bei Einrücktiefe 20 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1747: if rcurly bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1748: if rcurly bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1749: for rcurly bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1859: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1924:14: 'HPname' entspricht nicht dem Muster '^[a-z]([a-zA-Z0-9]+)*$'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1926:26: Vor '==' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1926:28: Nach '==' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1929:28: Vor '==' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1929:30: Nach '==' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1934:32: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1934:33: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1942:22: 'HPvertices' entspricht nicht dem Muster '^[a-z]([a-zA-Z0-9]+)*$'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1944:49: Zeile enthält ein TAB-Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1946:44: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1946:45: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1946:52: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1946:53: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1947:44: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1947:45: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1947:52: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1947:53: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1948: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1949: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1956:49: Zeile enthält ein TAB-Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:20: Vor '>' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:21: Nach '>' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:25: Nach '{' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:62: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:74: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:75: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:83: Nach ';' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1958:83: Vor '}' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:20: Vor '>' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:21: Nach '>' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:25: Nach '{' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:62: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:77: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:78: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:83: Nach ';' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1959:83: Vor '}' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1962:25: Zeile enthält ein TAB-Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1963:49: Zeile enthält ein TAB-Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:46: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:47: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:51: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:52: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:55: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:70: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1966:71: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1967:49: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1967:50: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1967:53: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1968:51: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1968:63: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1968:64: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:46: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:47: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:53: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:65: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:66: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:70: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1969:71: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1979: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:1981: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2005:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2011:28: Vor '>' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2011:29: Nach '>' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2013: Kind von label bei Einrücktiefe 12 nicht an korrekter Einrücktiefe 10
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2014: Kind von label bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2014: if bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2014:67: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2014:68: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2016: if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2016:73: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2016:74: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2017: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2018: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2019: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2020: if rcurly bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2022: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2023: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2024: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2025: if rcurly bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2027: if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2027:71: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2027:72: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2028: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2029: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2030: Kind von if bei Einrücktiefe 18 nicht an korrekter Einrücktiefe 16
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2031: if rcurly bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2033: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2034: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2035: Kind von if bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 14
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2036: if rcurly bei Einrücktiefe 14 nicht an korrekter Einrücktiefe 12
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2043:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2044:35: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2044:37: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2045:24: Vor '==' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2045:26: Nach '==' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:26: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:27: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:29: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:30: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:32: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:33: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:35: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:36: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:38: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:39: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:42: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2047:43: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:25: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:26: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:27: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:28: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:29: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:30: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:31: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:32: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:33: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:34: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:35: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:36: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:37: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:38: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:40: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2048:41: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:26: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:27: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:28: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:29: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:30: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:31: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:32: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:33: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:34: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:35: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:36: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:37: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:38: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:39: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:40: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:41: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:42: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:43: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:45: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2049:46: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:25: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:26: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:27: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:28: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:30: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2050:31: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2051:19: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2051:20: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2051:24: Vor '<=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2051:26: Nach '<=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2052:42: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2052:43: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2053:42: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2053:43: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2054:42: Vor '*' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2054:43: Nach '*' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2064:14: 'UNRBSname' entspricht nicht dem Muster '^[a-z]([a-zA-Z0-9]+)*$'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2071:26: Vor '>=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2071:28: Nach '>=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2075:19: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2075:20: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2075:24: Vor '<' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2075:25: Nach '<' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2078:49: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2078:50: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2080:19: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2080:20: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2080:24: Vor '<=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2080:26: Nach '<=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2081:61: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2081:62: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2082:29: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2089:19: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2089:20: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2089:24: Vor '<=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2089:45: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2089:46: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2090:21: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2090:22: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2090:26: Vor '<' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2090:27: Nach '<' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:60: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:61: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:65: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:66: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:69: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:70: Vor '/' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2091:71: Nach '/' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:19: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:20: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:22: Nach ';' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:23: Vor '<' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:24: Nach '<' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:42: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:43: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2095:45: Nach ';' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2096:48: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2096:49: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2096:52: Nach ',' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2105: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2107: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:17: Vor '=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:18: Nach '=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:22: Vor '<' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:23: Nach '<' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:47: Vor '+' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2122:48: Nach '+' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2123:15: Vor '>=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2123:17: Nach '>=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2123:25: Vor '<=' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2123:27: Nach '<=' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2138:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2144:28: Vor '>' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2144:29: Nach '>' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2147:65: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2147:66: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2149:71: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2149:72: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2151: Kind von method call bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2152: Kind von method call bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2160:69: Vor '-' befindet sich kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2160:70: Nach '-' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2162: Kind von method call bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2163: Kind von method call bei Einrücktiefe 16 nicht an korrekter Einrücktiefe 18
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Command.java:2170: for rcurly bei Einrücktiefe 8 nicht an korrekter Einrücktiefe 10
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Geometry.java:10:8: Nicht benutztes import - java.util.ArrayList.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Instance.java:218:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Item.java:38:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Item.java:38:25: 'DEMO' entspricht nicht dem Muster '^[a-z]([a-zA-Z0-9])*$'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Item.java:38:25: Variable 'DEMO' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\ParameterBlock.java:100:6: Nicht benutztes @param-Tag für 'double'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\ParameterBlock.java:102:47: Erwartete Tag @param für 'value'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\ParameterBlock.java:147:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\ParameterBlock.java:151:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\ParameterBlock.java:160:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:26:8: Nicht benutztes import - java.util.Queue.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:72:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:72:25: Variable 'enableAlarms' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:73:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:73:24: Variable 'temperatureThreshold' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:74:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:74:24: Variable 'humidityThreshold' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:75:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:75:25: Variable 'historic' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:76:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:76:27: Variable 'moldtable' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:850:12: Nach 'catch' folgt kein Leerzeichen.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:1705:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Project.java:1712:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:283:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1857: for bei Einrücktiefe 6 nicht an korrekter Einrücktiefe 4
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1858: if bei Einrücktiefe 8 nicht an korrekter Einrücktiefe 6
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1859: Kind von if bei Einrücktiefe 10 nicht an korrekter Einrücktiefe 8
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1860: Kind von if bei Einrücktiefe 10 nicht an korrekter Einrücktiefe 8
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1861: if rcurly bei Einrücktiefe 8 nicht an korrekter Einrücktiefe 6
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1862: for rcurly bei Einrücktiefe 6 nicht an korrekter Einrücktiefe 4
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1863: if bei Einrücktiefe 6 nicht an korrekter Einrücktiefe 4
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1864: Kind von if bei Einrücktiefe 8 nicht an korrekter Einrücktiefe 6
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\Space.java:1865: if rcurly bei Einrücktiefe 6 nicht an korrekter Einrücktiefe 4
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:6: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:8: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:9:13: Variable 'increase' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:10:12: Variable 'radius' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:11:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:17:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\CirclePackage.java:34:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:17: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:22:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:53: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:101: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:113: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:125: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:132: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:156: Zeile länger als 100 Zeichen
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\FacadePackage.java:210:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:4:8: Nicht benutztes import - java.util.List.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:13: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:42:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:47:22: Variable 'vertices' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:49:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:52:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:60:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:67:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:89:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:96:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:108:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\NetCommand.java:115:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:9: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:12:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:16:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:19:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:23:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:25:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:28:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:31:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\PluginMonitor.java:35:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:7: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:10:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:14:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:18:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:24:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\plugin\Shell.java:30:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\BrunataHistory.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\BrunataHistory.java:24: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\BrunataHistory.java:27:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\BrunataHistory.java:41:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\BrunataHistory.java:65:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:14: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:17:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:31:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:38:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:47:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:62:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\TargetManager.java:66:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Atom.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Atom.java:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Atom.java:6:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:5: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:6:11: Variable 'root' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:8:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:12:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:13: Kind von method def bei Einrücktiefe 6 nicht an korrekter Einrücktiefe 4
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Document.java:16:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:16: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:18:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:29:12: Variable 'document' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:32:20: Variable 'stack' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\DocumentParser.java:33:13: Variable 'root' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:1: Zeile entspricht nicht der erwarteten Header-Zeile '//---------------------------------------------------------------------------------'.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:7: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:8:10: Variable 'tag' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:9:14: Variable 'children' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:10:14: Variable 'properties' muss private sein.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:11:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:16:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:23:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:27:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\model\sense\brunata\xml\Element.java:31:3: Javadoc-Kommentar fehlt.
[checkstyle] c:\users\sebastian\workspace\model\src\net\sourceforge\bprocessor\mo...
[truncated message content] |
|
From: Sebastian G. <sg...@us...> - 2011-12-29 17:59:49
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory vz-cvs-4.sog:/tmp/cvs-serv5728/src/net/sourceforge/bprocessor/gl/view
Modified Files:
PopupMenu.java
Log Message:
catmull clark runs - still minor mistakes computed when subdividing 2d shapes...
Index: PopupMenu.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/PopupMenu.java,v
retrieving revision 1.56
retrieving revision 1.57
diff -C2 -d -r1.56 -r1.57
*** PopupMenu.java 21 Dec 2011 15:23:04 -0000 1.56
--- PopupMenu.java 29 Dec 2011 17:59:47 -0000 1.57
***************
*** 61,64 ****
--- 61,66 ----
import org.apache.log4j.Logger;
+ import com.sun.net.ssl.internal.ssl.Debug;
+
/**
***************
*** 717,721 ****
{
! AbstractAction quadDivide = new GeometricMenuAction(arguments, "Subdivision Constant Quads") {
Space owner;
public void actionPerformed(ActionEvent arg0) {
--- 719,723 ----
{
! AbstractAction quadDivide = new GeometricMenuAction(arguments, "Constant Quads") {
Space owner;
public void actionPerformed(ActionEvent arg0) {
***************
*** 815,819 ****
//Geometric first = arguments.iterator().next();
! AbstractAction SiepinskiDivide = new GeometricMenuAction(arguments, "Subdivision Sierpinski") {
Space owner;
--- 817,821 ----
//Geometric first = arguments.iterator().next();
! AbstractAction SiepinskiDivide = new GeometricMenuAction(arguments, "Sierpinski") {
Space owner;
***************
*** 923,929 ****
- //NOT YET WORKING, WHY???
{
! AbstractAction catmullClark = new GeometricMenuAction(arguments, "Subdivision CatmullClark") {
//http://en.wikipedia.org/wiki/Catmull%E2%80%93Clark_subdivision_surface
Space owner;
--- 925,930 ----
{
! AbstractAction catmullClark = new GeometricMenuAction(arguments, "CatmullClark") {
//http://en.wikipedia.org/wiki/Catmull%E2%80%93Clark_subdivision_surface
Space owner;
***************
*** 934,939 ****
cVertices.add(e.getTo().copy());
cVertices.add(e.getFrom().copy());
! for (Surface s : cSurfaces) {
! cVertices.add(s.center().copy());
}
Vertex eCenter = new Vertex(0,0,0);
--- 935,944 ----
cVertices.add(e.getTo().copy());
cVertices.add(e.getFrom().copy());
! if ((isPointFix(e.getTo())==false) || (isPointFix(e.getFrom())==false)) {
! if (cSurfaces.size()>1) {
! for (Surface s : cSurfaces) {
! cVertices.add(s.center().copy());
! }
! }
}
Vertex eCenter = new Vertex(0,0,0);
***************
*** 941,945 ****
eCenter=eCenter.add(v);
}
! eCenter=eCenter.scale(1/cVertices.size());
return eCenter;
}
--- 946,951 ----
eCenter=eCenter.add(v);
}
! double s = (double) cVertices.size();
! eCenter=eCenter.scale(1/s);
return eCenter;
}
***************
*** 948,956 ****
Vertex f = new Vertex(0,0,0);
Collection<Surface> fSurfaces= p.getSurfaces();
! if (fSurfaces.size()>0) {
for (Surface s : fSurfaces) {
! f=f.add(s.center());
}
! f=f.scale(1/fSurfaces.size());
} else {
f = p.copy();
--- 954,963 ----
Vertex f = new Vertex(0,0,0);
Collection<Surface> fSurfaces= p.getSurfaces();
! if (fSurfaces.size()>1) {
for (Surface s : fSurfaces) {
! f=f.add(s.center().copy());
}
! double s = (double) fSurfaces.size();
! f=f.scale(1/s);
} else {
f = p.copy();
***************
*** 963,970 ****
Collection<Edge> pEdges= p.getEdges();
if (pEdges.size()>0) {
! for (Edge e : pEdges) {
! r.add(e.center());
! }
! r.scale(1/pEdges.size());
} else {
r = p.copy();
--- 970,978 ----
Collection<Edge> pEdges= p.getEdges();
if (pEdges.size()>0) {
! for (Edge e : pEdges) {
! r=r.add(e.center().copy());
! }
! double s = (double) pEdges.size();
! r=r.scale(1.0/s);
} else {
r = p.copy();
***************
*** 973,976 ****
--- 981,1020 ----
}
+ public boolean isPointFix(Vertex p) {
+ boolean pointIsFix = false;
+ Collection<Edge> cEdges= p.getEdges();
+ for (Edge e : cEdges) {
+ Vertex vE;
+ if (e.getFrom().coincides(p)) {
+ vE = e.getFrom().minus(e.getTo());
+ } else {
+ vE = e.getTo().minus(e.getFrom());
+ }
+ vE.normalize();
+ for (Edge k : cEdges) {
+ if (!e.getFrom().coincides(k.getFrom())) {
+ Vertex vK;
+ if (k.getTo().coincides(p)) {
+ vK = k.getFrom().minus(k.getTo());
+ } else {
+ vK = k.getTo().minus(k.getFrom());
+ }
+ vK.normalize();
+ if (vK.coincides(vE)) {
+ Collection<Surface> eSurfaces = e.getSurfaces();
+ Collection<Surface> kSurfaces = k.getSurfaces();
+ if ((eSurfaces.size() ==1) && (kSurfaces.size()==1)){
+ pointIsFix = true;
+ }
+ }
+ }
+ }
+ }
+ if (p.isCorner()) {
+ pointIsFix = true;
+ }
+ return pointIsFix;
+ }
+
public void actionPerformed(ActionEvent arg0) {
***************
*** 984,988 ****
Surface surface = (Surface) current;
owner = surface.getOwner();
- Vertex sNormal = surface.normal();
Collection<Edge> sEdges = surface.getEdges();
//save surface center
--- 1028,1031 ----
***************
*** 997,1000 ****
--- 1040,1044 ----
Edge previous = (Edge) lEdges.get(lEdges.size()-1);
+
for (Edge sE : lEdges) {
List <Edge> nEdges = new ArrayList<Edge>();
***************
*** 1017,1034 ****
corner = sE.getTo();
}
-
- //move corner point
- Vertex f = CatMullClarkAverageFacePoints(corner);
- Vertex r = CatMullClarkAverageEdgePoints(corner);
-
- double n = corner.getSurfaces().size();
- Vertex p = corner.copy();
- r=r.scale(2);
- p=p.scale(n-3);
- corner = f.copy();
- corner=corner.add(r);
- corner=corner.add(p);
- corner=corner.scale(1/n);
//add new Edges
Edge nE = new Edge(eCenter,sCenter);
--- 1061,1107 ----
corner = sE.getTo();
}
+ double x = corner.getX();
+ double y = corner.getY();
+ double z = corner.getZ();
+
+ //check if corner point is at an edge of a 2d shape - any adjacent edge has only 1 surface attached
+ //if corner point is "corner" point then don't move neither
+
+ if (isPointFix(corner)==false) {
+ //move corner point
+ Vertex f = CatMullClarkAverageFacePoints(corner);
+ Vertex r = CatMullClarkAverageEdgePoints(corner);
+
+ double n = (double) corner.getEdges().size();
+
+ if ((f.coincides(corner)) || (corner.getEdges().size()>corner.getSurfaces().size())) {
+ //this does not yet work...
+ n = 5.0;
+ x = (1 * r.getX() + (2) * corner.getX()) / 3;
+ y = (1 * r.getY() + (2) * corner.getY()) / 3;
+ z = (1 * r.getZ() + (2) * corner.getZ()) / 3;
+ } else {
+ x = (f.getX() + 2 * r.getX() + (n-3) * corner.getX()) / n;
+ y = (f.getY() + 2 * r.getY() + (n-3) * corner.getY()) / n;
+ z = (f.getZ() + 2 * r.getZ() + (n-3) * corner.getZ()) / n;
+ }
+ System.out.println("n: " + n);
+ System.out.println("x: " + x);
+ System.out.println("y: " + y);
+ System.out.println("z: " + z);
+ System.out.println("f.x: " + f.getX());
+ System.out.println("f.y: " + f.getY());
+ System.out.println("f.z: " + f.getZ());
+ System.out.println("r.x: " + r.getX());
+ System.out.println("r.y: " + r.getY());
+ System.out.println("r.z: " + r.getZ());
+ System.out.println("c.x: " + corner.getX());
+ System.out.println("c.y: " + corner.getY());
+ System.out.println("c.z: " + corner.getZ());
+ }
+
+ Vertex c = new Vertex(x,y,z);
+
//add new Edges
Edge nE = new Edge(eCenter,sCenter);
***************
*** 1038,1045 ****
nEdges.add(nE.copy());
! nE = new Edge(pCenter,corner);
nEdges.add(nE.copy());
! nE = new Edge(corner, eCenter);
nEdges.add(nE.copy());
--- 1111,1118 ----
nEdges.add(nE.copy());
! nE = new Edge(pCenter,c);
nEdges.add(nE.copy());
! nE = new Edge(c, eCenter);
nEdges.add(nE.copy());
***************
*** 1074,1081 ****
Project.getInstance().changed();
}
//Project.getInstance().changed(Geometric.collect(entities));
Project.getInstance().checkpoint();
//now add all the new surfaces to the original geometry
!
for (Surface s : newSurfaces) {
owner.insertAll(s);
--- 1147,1155 ----
Project.getInstance().changed();
}
+
//Project.getInstance().changed(Geometric.collect(entities));
Project.getInstance().checkpoint();
//now add all the new surfaces to the original geometry
!
for (Surface s : newSurfaces) {
owner.insertAll(s);
***************
*** 1084,1087 ****
--- 1158,1162 ----
Project.getInstance().changed();
}
+
}
};
|
|
From: Michael L. <he...@us...> - 2011-12-21 15:23:06
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view In directory vz-cvs-4.sog:/tmp/cvs-serv30452/src/net/sourceforge/bprocessor/gl/view Modified Files: PopupMenu.java Log Message: removed unused import Index: PopupMenu.java =================================================================== RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/PopupMenu.java,v retrieving revision 1.55 retrieving revision 1.56 diff -C2 -d -r1.55 -r1.56 *** PopupMenu.java 21 Dec 2011 05:31:58 -0000 1.55 --- PopupMenu.java 21 Dec 2011 15:23:04 -0000 1.56 *************** *** 61,65 **** import org.apache.log4j.Logger; - import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader.Array; /** --- 61,64 ---- |
|
From: Michael L. <he...@us...> - 2011-12-21 12:55:09
|
Update of /cvsroot/bprocessor/gl
In directory vz-cvs-4.sog:/tmp/cvs-serv21735
Modified Files:
build.xml
Log Message:
removed the checkstyle clause from the build file
Index: build.xml
===================================================================
RCS file: /cvsroot/bprocessor/gl/build.xml,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** build.xml 17 Dec 2010 12:16:37 -0000 1.9
--- build.xml 21 Dec 2011 12:55:06 -0000 1.10
***************
*** 131,135 ****
</target>
! <target name="dist" depends="checkstyle,jar">
</target>
--- 131,135 ----
</target>
! <target name="dist" depends="jar">
</target>
|
|
From: Sebastian G. <sg...@us...> - 2011-12-21 05:32:00
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory vz-cvs-4.sog:/tmp/cvs-serv3253/src/net/sourceforge/bprocessor/gl/view
Modified Files:
PopupMenu.java
Log Message:
popup menu
new bnet commands
Index: PopupMenu.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/PopupMenu.java,v
retrieving revision 1.54
retrieving revision 1.55
diff -C2 -d -r1.54 -r1.55
*** PopupMenu.java 18 Sep 2011 16:37:08 -0000 1.54
--- PopupMenu.java 21 Dec 2011 05:31:58 -0000 1.55
***************
*** 461,465 ****
}
}
!
for (Modellor current : Modellor.getRegisteredModellors()) {
if (current.application() == Modellor.DETAIL) {
--- 461,465 ----
}
}
!
for (Modellor current : Modellor.getRegisteredModellors()) {
[...971 lines suppressed...]
! //Project.getInstance().changed(Geometric.collect(entities));
! Project.getInstance().checkpoint();
! //now add all the new surfaces to the original geometry
!
! for (Surface s : newSurfaces) {
! owner.insertAll(s);
! //owner.addAll(s);
! owner.update();
! Project.getInstance().changed();
}
}
! };
! subdivisionMenu.add(catmullClark);
}
! menu.add(subdivisionMenu);
}
}
{
|
|
From: Sebastian G. <sg...@us...> - 2011-12-21 05:31:56
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv3242/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsPackage.java
Log Message:
popup menu
new bnet commands
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** PhysicsPackage.java 18 Sep 2011 16:37:03 -0000 1.9
--- PhysicsPackage.java 21 Dec 2011 05:31:53 -0000 1.10
***************
*** 243,248 ****
Space guides = Item.createUnion("Guidelines");
union.add(guides);
-
-
//change p-net
--- 243,246 ----
***************
*** 251,256 ****
union.add(cNet);
-
-
}
}
--- 249,252 ----
|
|
From: Sebastian G. <sg...@us...> - 2011-09-18 16:37:10
|
Update of /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view
In directory vz-cvs-4.sog:/tmp/cvs-serv23979/src/net/sourceforge/bprocessor/gl/view
Modified Files:
PopupMenu.java
Log Message:
subdivion algorithms added to context menus
Index: PopupMenu.java
===================================================================
RCS file: /cvsroot/bprocessor/gl/src/net/sourceforge/bprocessor/gl/view/PopupMenu.java,v
retrieving revision 1.53
retrieving revision 1.54
diff -C2 -d -r1.53 -r1.54
*** PopupMenu.java 27 Jul 2011 07:19:32 -0000 1.53
--- PopupMenu.java 18 Sep 2011 16:37:08 -0000 1.54
***************
*** 61,64 ****
--- 61,66 ----
import org.apache.log4j.Logger;
+ import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader.Array;
+
/**
* The static popup menu generator
***************
*** 104,107 ****
--- 106,110 ----
};
menu.add(holeanalysis);
+ /*
AbstractAction flip = new EntityMenuAction(s, "Flip") {
public void actionPerformed(ActionEvent arg0) {
***************
*** 111,115 ****
};
menu.add(flip);
!
{
AbstractAction action = new EntityMenuAction(s, "Assign from Neighbours") {
--- 114,118 ----
};
menu.add(flip);
! */
{
AbstractAction action = new EntityMenuAction(s, "Assign from Neighbours") {
***************
*** 526,529 ****
--- 529,977 ----
menu.add(delete);
{
+ AbstractAction flip = new GeometricMenuAction(arguments, "flip normals") {
+ public void actionPerformed(ActionEvent arg0) {
+ //Selection.primary().clear();
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ surface.flip();
+ }
+ }
+ }
+ };
+ menu.add(flip);
+ }
+
+ {
+ AbstractAction makeCorner = new GeometricMenuAction(arguments, "create corner points") {
+ public void actionPerformed(ActionEvent arg0) {
+ //Selection.primary().clear();
+ for (Geometric current : entities) {
+ if (current instanceof Vertex) {
+ Vertex v = (Vertex) current;
+ v.setCorner(true);
+ }
+ if (current instanceof Edge) {
+ Edge e = (Edge) current;
+ e.getFrom().setCorner(true);
+ e.getTo().setCorner(true);
+ }
+ if (current instanceof Surface) {
+ Surface s = (Surface) current;
+ Collection<Edge> edges = s.getEdges();
+ for (Edge e : edges) {
+ e.getFrom().setCorner(true);
+ e.getTo().setCorner(true);
+ }
+ }
+ }
+ }
+ };
+ menu.add(makeCorner);
+ }
+
+ {
+ AbstractAction deleteCorner = new GeometricMenuAction(arguments, "remove corner points") {
+ public void actionPerformed(ActionEvent arg0) {
+ //Selection.primary().clear();
+ for (Geometric current : entities) {
+ if (current instanceof Vertex) {
+ Vertex v = (Vertex) current;
+ v.setCorner(false);
+ }
+ if (current instanceof Edge) {
+ Edge e = (Edge) current;
+ e.getFrom().setCorner(false);
+ e.getTo().setCorner(false);
+ }
+ if (current instanceof Surface) {
+ Surface s = (Surface) current;
+ Collection<Edge> edges = s.getEdges();
+ for (Edge e : edges) {
+ e.getFrom().setCorner(false);
+ e.getTo().setCorner(false);
+ }
+ }
+ }
+ }
+ };
+ menu.add(deleteCorner);
+ }
+
+ {
+ AbstractAction quadDivide = new GeometricMenuAction(arguments, "Subdivision Constant Quads") {
+ Space owner;
+ public void actionPerformed(ActionEvent arg0) {
+
+ Selection.primary().clear();
+ ArrayList<Surface> newSurfaces = new ArrayList();
+
+ ArrayList<Edge> newEdges = new ArrayList();
+
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ owner = surface.getOwner();
+ Vertex sNormal = surface.normal();
+ Collection<Edge> sEdges = surface.getEdges();
+ //save surface center
+ Vertex sCenter = surface.center();
+
+ //convert Collection into List for easier looping and reference
+ List<Edge> lEdges = new ArrayList<Edge>();
+ for (Iterator edgeIt = sEdges.iterator(); edgeIt.hasNext();) {
+ Edge lE = (Edge) edgeIt.next();
+ lEdges.add(lE);
+ }
+ Edge previous = (Edge) lEdges.get(lEdges.size()-1);
+
+ for (Edge sE : lEdges) {
+ List <Edge> nEdges = new ArrayList<Edge>();
+ Vertex eCenter = sE.center();
+ Vertex pCenter = previous.center();
+
+ Vertex corner;
+ //find relevant corner point sharing current and previous edge
+ if (sE.getFrom().coincides(previous.getFrom())) {
+ corner = sE.getFrom();
+ } else if (sE.getFrom().coincides(previous.getTo())) {
+ corner = sE.getFrom();
+ } else if (sE.getTo().coincides(previous.getFrom())) {
+ corner = sE.getTo();
+ } else {
+ corner = sE.getTo();
+ }
+
+ //add new Edges
+ Edge nE = new Edge(eCenter,sCenter);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(sCenter,pCenter);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(pCenter,corner);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(corner, eCenter);
+ nEdges.add(nE.copy());
+
+ //if current corner point is a corner (fix point) then make sure this property is kept in new surface
+ if (corner.isCorner()) {
+ for (Edge e : nEdges) {
+ if (e.getFrom().coincides(corner)) {
+ e.getFrom().setCorner(true);
+ }
+ if (e.getTo().coincides(corner)) {
+ e.getTo().setCorner(true);
+ }
+ }
+ }
+
+ //create new surface
+ Surface nS = new Surface(nEdges);
+ newSurfaces.add(nS);
+
+ //save current edge as the previous one for next iteration
+ previous = sE;
+ }
+ current.erase();
+ //Project.getInstance().changed();
+ }
+
+ }
+ //Project.getInstance().changed(Geometric.collect(entities));
+ Project.getInstance().checkpoint();
+ //now add all the new surfaces to the original geometry
+
+ for (Surface s : newSurfaces) {
+ owner.insertAll(s);
+ //owner.addAll(s);
+ owner.update();
+ Project.getInstance().changed();
+ }
+ }
+ };
+ menu.add(quadDivide);
+ }
+
+ {
+ AbstractAction SiepinskiDivide = new GeometricMenuAction(arguments, "Subdivision Sierpinski") {
+ Space owner;
+ public void actionPerformed(ActionEvent arg0) {
+
+ Selection.primary().clear();
+ ArrayList<Surface> newSurfaces = new ArrayList();
+
+ ArrayList<Edge> newEdges = new ArrayList();
+
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ owner = surface.getOwner();
+ Vertex sNormal = surface.normal();
+ Collection<Edge> sEdges = surface.getEdges();
+
+ //convert Collection into List for easier looping and reference
+ List<Edge> lEdges = new ArrayList<Edge>();
+ for (Iterator edgeIt = sEdges.iterator(); edgeIt.hasNext();) {
+ Edge lE = (Edge) edgeIt.next();
+ lEdges.add(lE);
+ }
+ Edge previous = (Edge) lEdges.get(lEdges.size()-1);
+
+ ArrayList<Vertex> centerPoints = new ArrayList();
+
+ for (Edge sE : lEdges) {
+ List <Edge> nEdges = new ArrayList<Edge>();
+ Vertex eCenter = sE.center();
+ Vertex pCenter = previous.center();
+
+ //save centerPoint of current Edge
+ centerPoints.add(eCenter.copy());
+
+ Vertex corner;
+ //find relevant corner point sharing current and previous edge
+ if (sE.getFrom().coincides(previous.getFrom())) {
+ corner = sE.getFrom();
+ } else if (sE.getFrom().coincides(previous.getTo())) {
+ corner = sE.getFrom();
+ } else if (sE.getTo().coincides(previous.getFrom())) {
+ corner = sE.getTo();
+ } else {
+ corner = sE.getTo();
+ }
+
+ //add new Edges
+ Edge nE = new Edge(eCenter,pCenter);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(pCenter,corner);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(corner, eCenter);
+ nEdges.add(nE.copy());
+
+ //if current corner point is a corner (fix point) then make sure this property is kept in new surface
+ if (corner.isCorner()) {
+ for (Edge e : nEdges) {
+ if (e.getFrom().coincides(corner)) {
+ e.getFrom().setCorner(true);
+ }
+ if (e.getTo().coincides(corner)) {
+ e.getTo().setCorner(true);
+ }
+ }
+ }
+
+ //create new surface
+ Surface nS = new Surface(nEdges);
+ newSurfaces.add(nS);
+
+ //save current edge as the previous one for next iteration
+ previous = sE;
+ }
+ current.erase();
+ //Project.getInstance().changed();
+
+ //create center polygon
+ Vertex pVertex = centerPoints.get(centerPoints.size()-1).copy();
+ List <Edge> nEdges = new ArrayList<Edge>();
+ for (Vertex v : centerPoints) {
+ Edge nE = new Edge(pVertex,v);
+ nEdges.add(nE.copy());
+ pVertex = v.copy();
+ }
+ Surface nS = new Surface(nEdges);
+ newSurfaces.add(nS);
+ }
+
+ }
+ //Project.getInstance().changed(Geometric.collect(entities));
+ Project.getInstance().checkpoint();
+ //now add all the new surfaces to the original geometry
+
+ for (Surface s : newSurfaces) {
+ owner.insertAll(s);
+ //owner.addAll(s);
+ owner.update();
+ Project.getInstance().changed();
+ }
+ }
+ };
+ menu.add(SiepinskiDivide);
+ }
+
+
+
+ //NOT YET WORKING, WHY???
+ /*
+
+ {
+ AbstractAction catmullClark = new GeometricMenuAction(arguments, "Subdivision CatmullClark") {
+ //http://en.wikipedia.org/wiki/Catmull%E2%80%93Clark_subdivision_surface
+ Space owner;
+
+ public Vertex CatmullClarkEdgeAverage(Edge e) {
+ Collection<Surface> cSurfaces = e.getSurfaces();
+ List<Vertex> cVertices = new ArrayList<Vertex>();
+ cVertices.add(e.getTo().copy());
+ cVertices.add(e.getFrom().copy());
+ for (Surface s : cSurfaces) {
+ cVertices.add(s.center().copy());
+ }
+ Vertex eCenter = new Vertex(0,0,0);
+ for (Vertex v : cVertices) {
+ eCenter=eCenter.add(v);
+ }
+ eCenter=eCenter.scale(1/cVertices.size());
+ return eCenter;
+ }
+
+ public Vertex CatMullClarkAverageFacePoints(Vertex p) {
+ Vertex f = new Vertex(0,0,0);
+ Collection<Surface> fSurfaces= p.getSurfaces();
+ if (fSurfaces.size()>0) {
+ for (Surface s : fSurfaces) {
+ f=f.add(s.center());
+ }
+ f=f.scale(1/fSurfaces.size());
+ } else {
+ f = p.copy();
+ }
+ return f;
+ }
+
+ public Vertex CatMullClarkAverageEdgePoints(Vertex p) {
+ Vertex r = new Vertex(0,0,0);
+ Collection<Edge> pEdges= p.getEdges();
+ if (pEdges.size()>0) {
+ for (Edge e : pEdges) {
+ r.add(e.center());
+ }
+ r.scale(1/pEdges.size());
+ } else {
+ r = p.copy();
+ }
+ return r;
+ }
+
+ public void actionPerformed(ActionEvent arg0) {
+
+ Selection.primary().clear();
+ ArrayList<Surface> newSurfaces = new ArrayList();
+ ArrayList<Surface> oldSurfaces = new ArrayList();
+ ArrayList<Edge> newEdges = new ArrayList();
+
+ for (Geometric current : entities) {
+ if (current instanceof Surface) {
+ Surface surface = (Surface) current;
+ owner = surface.getOwner();
+ Vertex sNormal = surface.normal();
+ Collection<Edge> sEdges = surface.getEdges();
+ //save surface center
+ Vertex sCenter = surface.center().copy();
+
+ //convert Collection into List for easier looping and reference
+ List<Edge> lEdges = new ArrayList<Edge>();
+ for (Iterator edgeIt = sEdges.iterator(); edgeIt.hasNext();) {
+ Edge lE = (Edge) edgeIt.next();
+ lEdges.add(lE);
+ }
+ Edge previous = (Edge) lEdges.get(lEdges.size()-1);
+
+ for (Edge sE : lEdges) {
+ List <Edge> nEdges = new ArrayList<Edge>();
+
+ //Edge Points = average of edges endpoints and facing surface centroids
+
+ Vertex eCenter = CatmullClarkEdgeAverage(sE);
+ Vertex pCenter = CatmullClarkEdgeAverage(previous);
+
+ //find relevant corner point sharing current and previous edge
+ Vertex corner;
+
+ if (sE.getFrom().coincides(previous.getFrom())) {
+ corner = sE.getFrom();
+ } else if (sE.getFrom().coincides(previous.getTo())) {
+ corner = sE.getFrom();
+ } else if (sE.getTo().coincides(previous.getFrom())) {
+ corner = sE.getTo();
+ } else {
+ corner = sE.getTo();
+ }
+
+ //move corner point
+ Vertex f = CatMullClarkAverageFacePoints(corner);
+ Vertex r = CatMullClarkAverageEdgePoints(corner);
+
+ double n = corner.getSurfaces().size();
+ Vertex p = corner.copy();
+ r=r.scale(2);
+ p=p.scale(n-3);
+ corner = f.copy();
+ corner=corner.add(r);
+ corner=corner.add(p);
+ corner=corner.scale(1/n);
+
+ //add new Edges
+ Edge nE = new Edge(eCenter,sCenter);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(sCenter,pCenter);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(pCenter,corner);
+ nEdges.add(nE.copy());
+
+ nE = new Edge(corner, eCenter);
+ nEdges.add(nE.copy());
+
+ //if current corner point is a corner (fix point) then make sure this property is kept in new surface
+ if (corner.isCorner()) {
+ for (Edge e : nEdges) {
+ if (e.getFrom().coincides(corner)) {
+ e.getFrom().setCorner(true);
+ }
+ if (e.getTo().coincides(corner)) {
+ e.getTo().setCorner(true);
+ }
+ }
+ }
+
+ //create new surface
+ Surface nS = new Surface(nEdges);
+ newSurfaces.add(nS);
+
+ //save current edge as the previous one for next iteration
+ previous = sE;
+ }
+ oldSurfaces.add((Surface)current);
+ //current.erase();
+ //Project.getInstance().changed();
+ }
+
+ }
+
+ for (Surface s : oldSurfaces) {
+ s.erase();
+ Project.getInstance().changed();
+ }
+ //Project.getInstance().changed(Geometric.collect(entities));
+ Project.getInstance().checkpoint();
+ //now add all the new surfaces to the original geometry
+
+ for (Surface s : newSurfaces) {
+ owner.insertAll(s);
+ //owner.addAll(s);
+ owner.update();
+ Project.getInstance().changed();
+ }
+ }
+ };
+ menu.add(catmullClark);
+ }
+ */
+
+ {
AbstractAction action = new GeometricMenuAction(arguments, "Make Union") {
public void actionPerformed(ActionEvent event) {
|
|
From: Sebastian G. <sg...@us...> - 2011-09-18 16:37:05
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv23969/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsPackage.java
Log Message:
subdivion algorithms added to context menus
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** PhysicsPackage.java 27 Jul 2011 07:19:39 -0000 1.8
--- PhysicsPackage.java 18 Sep 2011 16:37:03 -0000 1.9
***************
*** 81,85 ****
//parameters incl. getters
! private DoubleValue gravity= new DoubleValue(-9.81);
public DoubleValue getGravity() {
return gravity;
--- 81,85 ----
//parameters incl. getters
! private DoubleValue gravity= new DoubleValue(0);
public DoubleValue getGravity() {
return gravity;
***************
*** 98,101 ****
--- 98,105 ----
return cDamp;
}
+ private DoubleValue timeStep= new DoubleValue(0.02);
+ public DoubleValue getTimeStep() {
+ return timeStep;
+ }
private DoubleValue restLengthFactor= new DoubleValue(0.5);
public DoubleValue getRestLengthFactor() {
***************
*** 234,245 ****
}
//add guidelines
Space guides = Item.createUnion("Guidelines");
union.add(guides);
//change p-net
! pN.update(guides, 0.02, equalConstant.getValue(), equalDamping.getValue(), rectConstant.getValue(), rectDamping.getValue(), planeConstant.getValue(), planeDamping.getValue(), volume.getValue());
union.add(cNet);
}
}
--- 238,256 ----
}
+
+
//add guidelines
Space guides = Item.createUnion("Guidelines");
union.add(guides);
+
+
//change p-net
! pN.update(guides, timeStep.getValue(), equalConstant.getValue(), equalDamping.getValue(), rectConstant.getValue(), rectDamping.getValue(), planeConstant.getValue(), planeDamping.getValue(), volume.getValue());
union.add(cNet);
+
+
+
}
}
***************
*** 483,486 ****
--- 494,502 ----
//add sliders
{
+ SliderControl control = new SliderControl(0.0001, 0.1, skeleton.getTimeStep(), this);
+ Label labelled = new Label("Calc Time Step [s]", control);
+ content.add(labelled.row());
+ }
+ {
SliderControl control = new SliderControl(-1, 1, skeleton.getFactor(), this);
Label labelled = new Label("Tool Setting", control);
|
|
From: Sebastian G. <sg...@us...> - 2011-07-27 08:10:41
|
Update of /cvsroot/bprocessor/gui/src/gfx In directory vz-cvs-4.sog:/tmp/cvs-serv27695/src/gfx Added Files: p-spring.png p-weight.png Log Message: missing images... --- NEW FILE: p-spring.png --- (This appears to be a binary file; contents omitted.) --- NEW FILE: p-weight.png --- (This appears to be a binary file; contents omitted.) |
|
From: Michael L. <he...@us...> - 2011-07-27 07:19:42
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics
In directory vz-cvs-4.sog:/tmp/cvs-serv14186/src/net/sourceforge/bprocessor/packages/physics
Modified Files:
PhysicsMeshExtrusionPackage.java PhysicsPackage.java
Log Message:
Index: PhysicsPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsPackage.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -d -r1.7 -r1.8
*** PhysicsPackage.java 30 Jun 2011 10:08:21 -0000 1.7
--- PhysicsPackage.java 27 Jul 2011 07:19:39 -0000 1.8
***************
*** 176,180 ****
panel = new ControlPanel(this,cNet,pN,edges);
GUI.getInstance().registerControlPanel(panel);
!
firstTime = true;
}
--- 176,180 ----
panel = new ControlPanel(this,cNet,pN,edges);
GUI.getInstance().registerControlPanel(panel);
! setMonitor(panel);
firstTime = true;
}
Index: PhysicsMeshExtrusionPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/physics/PhysicsMeshExtrusionPackage.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** PhysicsMeshExtrusionPackage.java 5 Jun 2011 19:57:14 -0000 1.4
--- PhysicsMeshExtrusionPackage.java 27 Jul 2011 07:19:39 -0000 1.5
***************
*** 85,88 ****
--- 85,89 ----
panel = new ControlPanel(this);
GUI.getInstance().registerControlPanel(panel);
+ setMonitor(panel);
}
|
|
From: Michael L. <he...@us...> - 2011-07-27 07:19:41
|
Update of /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/skeleton
In directory vz-cvs-4.sog:/tmp/cvs-serv14186/src/net/sourceforge/bprocessor/packages/skeleton
Modified Files:
SkeletonPackage.java
Log Message:
Index: SkeletonPackage.java
===================================================================
RCS file: /cvsroot/bprocessor/bprocessor/src/net/sourceforge/bprocessor/packages/skeleton/SkeletonPackage.java,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -d -r1.8 -r1.9
*** SkeletonPackage.java 29 Jun 2011 13:56:05 -0000 1.8
--- SkeletonPackage.java 27 Jul 2011 07:19:39 -0000 1.9
***************
*** 63,66 ****
--- 63,67 ----
panel = new ControlPanel(this);
GUI.getInstance().registerControlPanel(panel);
+ setMonitor(panel);
}
|