描述:随着时间推移,A变为B,B分为C D E,C和D合并为I,E变为H,I和H又合并为J,其中,A-J是Object,最上面是现在的时间。问题:我要用Graphics画出这个图形,要根据下面的Object的宽度和位置得到上面的Object的宽度和位置,比如,我需要得到C的最左侧和D的最右侧位置,才能得到I的位置和宽度。所以,我要从最下面开始遍历,然后从左侧遍历才行。请问,如何存储,用什么数据结构?才能体现这种关系啊?才能画出这个模型呢?谢谢各位!graphics2D数据结构
解决方案 »
- myeclipse6.6 自动检错与自动编译问题
- 我刚下了个JDK。请问如何将它嵌入到eclipse中
- java在按字符方式读取文件时如何像c++一样实现读取指针回退?
- 用java怎么将图片存进Access里啊?
- 请问输出怎么对齐
- 怎样将.class文件变成.exe文件
- 还是老问题:String创建对象的数量
- applet访问本地数据库异常(cannot access file JdbcOdbcSecurityCheck)
- package **.** 应该怎么放置目录 为什么我import总是找不到 我能给的分不多了 就50吧
- applet用jdbc链接SQLServer 2000的问题
- 求大神帮帮忙。this 的问题.....................
- 求哪位大神给我一个SOcket网络传输传图片的例子
A是一个常量模型,B是一个分割模型,B分割成了C,D,E,C,D,E相当于B的孩子,所以可以把B,C,D,E当成一个模型。H,I,J也是常量模型。
现在我把A和B放在了一个主VectorMain里,B的孩子们C,D,E分别有自己的VectorC, VectorD, VectorE,比如VectorE存储H,这样就能递归遍历Vector得到所有的模型了。
但是问题是,我不知道该把模型I放在哪个Vector里,放在VectorC? 还是VectorD?遍历的时候,又如何递归遍历到I呢? 模型J也是类似的情况
A是一个常量模型,B是一个分割模型,B分割成了C,D,E,C,D,E相当于B的孩子,所以可以把B,C,D,E当成一个模型。H,I,J也是常量模型。
现在我把A和B放在了一个主VectorMain里,B的孩子们C,D,E分别有自己的VectorC, VectorD, VectorE,比如VectorE存储H,这样就能递归遍历Vector得到所有的模型了。
但是问题是,我不知道该把模型I放在哪个Vector里,放在VectorC? 还是VectorD?遍历的时候,又如何递归遍历到I呢? 模型J也是类似的情况
描述:随着时间推移,A变为B,B分为C D E,C和D合并为I,E变为H,I和H又合并为J,其中,A-J是Object,A是一个常量模型,B是一个分割模型,B分割成了C,D,E,C,D,E相当于B的孩子,所以可以把B,C,D,E当成一个模型。H,I,J也是常量模型。A-J是拖动上去的。
最上面是现在的时间。我要循环遍历得到所有的Object,用Graphics画出这个图形,要根据下面的Object的宽度和位置得到上面的Object的宽度和位置,比如,我需要得到C的最左侧和D的最右侧位置,才能得到I的位置和宽度。所以,我要从最下面开始遍历,然后从左侧遍历才行。现在我把A和B放在了一个主VectorMain里,B的孩子们C,D,E分别有自己的VectorC, VectorD, VectorE,比如VectorE存储H,这样就能递归遍历Vector得到所有的模型了。
但是问题是,我不知道该把模型I放在哪个Vector里,放在VectorC? 还是VectorD?遍历的时候,又如何递归遍历到I呢? 模型J也是类似的情况请问,把I放在哪个Vector里,才能遍历到I?或者有没有其他的存储C和D合并为I这种关系呢?谢谢各位!
<node name="A" width="300" height="100" color="#ff0000" x="150" y="150"/>
<node name="J" width="300" height="100" color="#ffff00" x="0" y="600"/>
....
<node name="A" width="" height="" color="" x="" y="" parentsName=""/>
<node name="B" width="" height="" color="" x="" y="" parentsName="A"/>
<node name="C" width="" height="" color="" x="" y="" parentsName="B"/>
<node name="D" width="" height="" color="" x="" y="" parentsName="B"/>
<node name="E" width="" height="" color="" x="" y="" parentsName="B"/>
<node name="H" width="" height="" color="" x="" y="" parentsName="E"/>
<node name="I" width="" height="" color="" x="" y="" parentsName="C,D"/>
<node name="J" width="" height="" color="" x="" y="" parentsName="H,I"/>怎么存都可以,关键是你读取后怎么处理数据逻辑.
对于这个图,各个模型是拖动上去的,比如先有一个Z,拖动分支模型B到Z上,就出现B和Z。如图:
。
拖动分支模型A到B1上,模型C到B2上,出现如图:其他的类似。我是利用Vector存储递归遍历各个模型的。
首先有一个Vector存储模型Z和分支模型B。对于分支B1和B2来说,它们分别有各自的Vector:VectorB1和VectorB2,VectorB1里存储A,VectorB2里存储C和F。
当然,对于分支模型A来说,A1有VectorA1,存储D和G;A2有VectorA2,存储E。
这样通过递归调用,就能从最左侧(也就是A1,D,G)确定它们的位置,然后确定A2的位置(确保不与A1重叠),它们的高度是平均分的。
问题是:我不知道如何存储模型I,我想通过拖动I到E,F之间的空隙,生成如图:,所以,我不知道如何存储I,是存储到VectorA2?还是VectorB2?
请问你有什么想法吗?
用Vector存储,递归遍历,这样可以吗?