コード例 #1
0
 def _default_base_quad(self):
     bq = SceneData(
         name="fullscreen_quad",
         vertex_array=VertexArray(name="tri", each=6),
     )
     fq = FULLSCREEN_QUAD.reshape((6, 3), order="C")
     bq.vertex_array.attributes.append(
         VertexAttribute(name="vertexPosition_modelspace", data=fq))
     return bq
コード例 #2
0
ファイル: box.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     va = VertexArray(name="box_outline", each=36)
     data = compute_box_geometry(self.left_edge, self.right_edge).copy()
     va.attributes.append(
         VertexAttribute(name="model_vertex", data=data.astype("f4")))
     N = data.size // 4
     le = np.concatenate([[self.left_edge.copy()] for _ in range(N)])
     re = np.concatenate([[self.right_edge.copy()] for _ in range(N)])
     dds = self.right_edge - self.left_edge
     dds = np.concatenate([[dds.copy()] for _ in range(N)])
     va.attributes.append(
         VertexAttribute(name="in_left_edge", data=le.astype("f4")))
     va.attributes.append(
         VertexAttribute(name="in_right_edge", data=re.astype("f4")))
     va.attributes.append(
         VertexAttribute(name="in_dx", data=dds.astype("f4")))
     return va
コード例 #3
0
ファイル: grid_positions.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     va = VertexArray(name="grid_bounds")
     positions = []
     dx = []
     le = []
     re = []
     for g in self.grid_list:
         dx.append(g.dds.tolist())
         le.append(g.LeftEdge.tolist())
         re.append(g.RightEdge.tolist())
     positions = np.ones((len(self.grid_list), 4), dtype="f4")
     dx = np.array(dx).astype("f4")
     le = np.array(le).astype("f4")
     re = np.array(re).astype("f4")
     va.attributes.append(
         VertexAttribute(name="model_vertex", data=positions))
     va.attributes.append(VertexAttribute(name="in_left_edge", data=le))
     va.attributes.append(VertexAttribute(name="in_dx", data=dx))
     va.attributes.append(VertexAttribute(name="in_right_edge", data=re))
     return va
コード例 #4
0
 def _default_vertex_array(self):
     model_vertex = np.array([[-1, 1], [-1, -1], [1, 1], [1, -1]],
                             order="F",
                             dtype="f4")
     va = VertexArray(name="particle_positions")
     va.attributes.append(
         VertexAttribute(name="model_vertex", data=model_vertex, divisor=0))
     for attr in ("position_field", "radius_field", "color_field"):
         if getattr(self, attr) is None:
             continue
         field = self.data_source[self.particle_type, getattr(self, attr)]
         if field.units.dimensions is length:
             field.convert_to_units("unitary")
         field = field.astype("f4").d
         if field.ndim == 1:
             field.shape = (field.size, 1)
         else:
             self.size = field.shape[0]  # for positions
         print(f"Setting {attr} to a field of shape {field.shape}")
         va.attributes.append(
             VertexAttribute(name=attr, data=field, divisor=1))
     print(f"Size is now: {self.size}")
     return va
コード例 #5
0
ファイル: rgba.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     va = VertexArray(name="tri", each=6)
     fq = FULLSCREEN_QUAD.reshape((6, 3), order="C")
     va.attributes.append(
         VertexAttribute(name="vertexPosition_modelspace", data=fq))
     return va
コード例 #6
0
ファイル: mesh.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     return VertexArray(name="mesh_info", each=0)
コード例 #7
0
ファイル: text_characters.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     return VertexArray(name="char_info", each=6)
コード例 #8
0
ファイル: line.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     return VertexArray(name="vertices", each=6)
コード例 #9
0
 def _default_vertex_array(self):
     return VertexArray(name="block_info", each=1)
コード例 #10
0
ファイル: curve.py プロジェクト: yt-project/yt_idv
 def _default_vertex_array(self):
     va = VertexArray(name="vertices")
     return va