Exemplo n.º 1
0
    def _compute_indices(self):
        num = self._num
        topo = self._topo
        diff = self.diff
        bspline = self._bspline
        vert_indices = self._vert_indices
        edge_indices = self._edge_indices
        surf_indices = self._surf_indices
        str_indices = self._str_indices
        mult = self._mult
        size = self._size

        vert_indices[:] \
            = BSElib.computevertindices(num['surf'], num['edge'], num['vert'],
                                        topo['surf_ptrs'], topo['edge_ptrs'],
                                        diff['surf'], diff['edge'])

        edge_indices['df'], edge_indices['cp'], edge_indices['pt'], \
            = BSElib.computeedgeindices(num['surf'], num['edge'],
                                        num['group'], topo['surf_ptrs'],
                                        diff['surf'], topo['edge_group'],
                                        bspline['num_cp'], bspline['num_pt'])

        surf_indices['df'], surf_indices['cp'], surf_indices['pt'], \
            = BSElib.computesurfindices(num['surf'], num['group'],
                                        topo['surf_group'],
                                        bspline['num_cp'], bspline['num_pt'])

        str_indices['df'], str_indices['cp'], str_indices['pt'], \
            = BSElib.computestrindices(num['surf'], num['group'],
                                       topo['surf_group'],
                                       bspline['num_cp'], bspline['num_pt'])

        mult['vert'], mult['edge'], mult['diff_vert'], mult['diff_edge'] \
            = BSElib.computemults(num['surf'], num['edge'], num['vert'],
                                  topo['surf_ptrs'], topo['edge_ptrs'],
                                  diff['surf'], diff['edge'])

        nvert_df = numpy.max(vert_indices)

        edge_indices['df'][:] += nvert_df
        edge_indices['cp'][:] += num['vert']
        edge_indices['pt'][:] += num['vert']

        surf_indices['df'][:] += numpy.max(edge_indices['df'])
        surf_indices['cp'][:] += numpy.max(edge_indices['cp'])
        surf_indices['pt'][:] += numpy.max(edge_indices['pt'])

        size['df_str'] = str_indices['df'][-1, -1]
        size['df'] = surf_indices['df'][-1, -1]
        size['cp'] = surf_indices['cp'][-1, -1]
        size['cp_str'] = str_indices['cp'][-1, -1]
        size['pt_str'] = str_indices['pt'][-1, -1]
        size['pt'] = surf_indices['pt'][-1, -1]
Exemplo n.º 2
0
    def _compute_indices(self):
        num = self._num
        topo = self._topo
        diff = self.diff
        bspline = self._bspline
        vert_indices = self._vert_indices
        edge_indices = self._edge_indices
        surf_indices = self._surf_indices
        str_indices = self._str_indices
        mult = self._mult
        size = self._size

        vert_indices[:] \
            = BSElib.computevertindices(num['surf'], num['edge'], num['vert'],
                                        topo['surf_ptrs'], topo['edge_ptrs'],
                                        diff['surf'], diff['edge'])

        edge_indices['df'], edge_indices['cp'], edge_indices['pt'], \
            = BSElib.computeedgeindices(num['surf'], num['edge'],
                                        num['group'], topo['surf_ptrs'],
                                        diff['surf'], topo['edge_group'],
                                        bspline['num_cp'], bspline['num_pt'])

        surf_indices['df'], surf_indices['cp'], surf_indices['pt'], \
            = BSElib.computesurfindices(num['surf'], num['group'],
                                        topo['surf_group'],
                                        bspline['num_cp'], bspline['num_pt'])

        str_indices['df'], str_indices['cp'], str_indices['pt'], \
            = BSElib.computestrindices(num['surf'], num['group'],
                                       topo['surf_group'],
                                       bspline['num_cp'], bspline['num_pt'])

        mult['vert'], mult['edge'], mult['diff_vert'], mult['diff_edge'] \
            = BSElib.computemults(num['surf'], num['edge'], num['vert'],
                                  topo['surf_ptrs'], topo['edge_ptrs'],
                                  diff['surf'], diff['edge'])

        nvert_df = numpy.max(vert_indices)

        edge_indices['df'][:] += nvert_df
        edge_indices['cp'][:] += num['vert']
        edge_indices['pt'][:] += num['vert']

        surf_indices['df'][:] += numpy.max(edge_indices['df'])
        surf_indices['cp'][:] += numpy.max(edge_indices['cp'])
        surf_indices['pt'][:] += numpy.max(edge_indices['pt'])

        size['df_str'] = str_indices['df'][-1, -1]
        size['df'] = surf_indices['df'][-1, -1]
        size['cp'] = surf_indices['cp'][-1, -1]
        size['cp_str'] = str_indices['cp'][-1, -1]
        size['pt_str'] = str_indices['pt'][-1, -1]
        size['pt'] = surf_indices['pt'][-1, -1]