小编Dan*_*iel的帖子

绘制用d3.js旋转和翻转的叠加块

我必须创建一个由块的层次结构组成的图表(一个包含较小块的大块,其中包含其他块).

数据是这些块的层次结构

{ 
    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)

每个块都有一个几何(边数组)和一个方向:

  • 没有方向
  • 翻转X(在X轴上绕着边界框的中心翻转)
  • 翻转y(在Y轴上绕着边界框的中心翻转)
  • 旋转90度(绕原点旋转90度)
  • 180度

边的坐标相对于父块的原点.

因此,如果旋转主块,子块的坐标系也将旋转.

我需要绘制它,然后根据指标更改每个块的填充颜色.

我现在这样做的方法是递归地解析该层次结构并为每个层次附加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元素.这些块还有标签和指示其原点的位置,但我不包括这个以简化.

有一个更好的方法吗?

谢谢!

javascript svg d3.js

11
推荐指数
1
解决办法
289
查看次数

通过mysql中的一个特定帖子找到与标签相关的帖子

我有这些表:帖子(post_is,标题和文本),标签(tag_id,标签),Post_tag_nn(id,tag_id,post_id).我想要一个特定的帖子,例如4个标签,所有帖子都带有这些标签,然后所有帖子都带有这些标签中的任意三个,然后所有帖子都带有任意两个标签,依此类推.我如何为此目的构建SQL查询(在php中,它似乎是一个回溯问题=给定集合的所有子集).

mysql sql tags many-to-many

2
推荐指数
1
解决办法
798
查看次数

标签 统计

d3.js ×1

javascript ×1

many-to-many ×1

mysql ×1

sql ×1

svg ×1

tags ×1