我必须创建一个由块的层次结构组成的图表(一个包含较小块的大块,其中包含其他块).
数据是这些块的层次结构
{
element: {name: test, geometry: [..], orientation: '180'}
element: {name: test2, geometry: [..], orientation: 'none'}
element: {name: test3, geometry: [..], orientation: 'flipX'}
element: {
name: test4,
geometry: [..],
orientation: '90'
children:
[
element: {name: test5, geometry: [..], orientation: '180'}
element: {name: test6, geometry: [..], orientation: 'none'}
]
}
}
Run Code Online (Sandbox Code Playgroud)
每个块都有一个几何(边数组)和一个方向:
边的坐标相对于父块的原点.
因此,如果旋转主块,子块的坐标系也将旋转.
我需要绘制它,然后根据指标更改每个块的填充颜色.
我现在这样做的方法是递归地解析该层次结构并为每个层次附加svg元素:
<svg>
<g><path>
<g><path></g>
<g><path></g>
<g><path>
<g><path></g>
</g>
</g>
</svg>
Run Code Online (Sandbox Code Playgroud)
当我在已经旋转的组内绘制时,这有助于所有坐标继承.
我不确定这是最好的方法,因为我没有使用.data()append()enter()函数,因为我不知道如何绘制imbricated元素.这些块还有标签和指示其原点的位置,但我不包括这个以简化.
有一个更好的方法吗?
谢谢!
我有这些表:帖子(post_is,标题和文本),标签(tag_id,标签),Post_tag_nn(id,tag_id,post_id).我想要一个特定的帖子,例如4个标签,所有帖子都带有这些标签,然后所有帖子都带有这些标签中的任意三个,然后所有帖子都带有任意两个标签,依此类推.我如何为此目的构建SQL查询(在php中,它似乎是一个回溯问题=给定集合的所有子集).