1d5a4d47 Update ExternalFaces worklet to use hashes
fc7b90ac Add hash function
b1e6c1e3 Add method for getting a cononical edge id
8e72dc73 Add method for getting a cononical face id
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !900
8e0a0308 Handles the case when the passed canvas has rendered data.
b727377f Refactoring
44357d51 Apply external faces filter on cellset before wireframing
7e95269c Refactoring wireframing code
5738e895 Wireframe rendering
657b0b94 Applies `clang-format` and minor refactoring
af2acc57 Implements a simple line renderer using Xialin Wu's algorithm
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Matt Larsen <mlarsen@cs.uoregon.edu>
Merge-request: !895
This method more clearly communicates "execution was successful" than
"IsDataSetValid". Changed some infrastructure code's use of these methods
to fix a bug in VTK.
99f60c27 Add GameOfLife example to show off WorkletPointNeighborhood3x3x3.
ce803832 Adds WorkletPointNeighborhood and DispatcherPointNeighborhood types.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !864
This change adds a option via `SetIsOverlay` which causes the
`MapperWireframer` to use the existing depth buffer instead of
generating a new one.
This change refactors the line color blending to
retain the alpha value separately instead of pre-multiplying it.
Conway's game of life is a very simple example of a point neighborhood worklet
that needs to access the 8 adjacent points of each point in a 2d structured grid
5429f120 fixed energy error and fix for ray camera
ac784330 Merge remote-tracking branch 'upstream/master' into x_ray_add_emmission
521e445b emission now functioning
52959d91 testing emission
5fc80517 initial version on absorption and emission integration
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !893
Previously once an ArrayHandle was stolen it was placed in an invalid state
where it could not used again by VTK-m. Now instead after being stolen it
is placed into a state where it is identical to memory allocated outside
of VTK-m and passed in.
89f43999 Reduce the amount of typedef statements in DeviceAdapters
e0958311 ArrayHandleReverse now supports shrink/allocate under all conditions.
Acked-by: Kitware Robot <kwrobot@kitware.com>
Acked-by: Kenneth Moreland <kmorel@sandia.gov>
Merge-request: !879
By using the auto keyword and decltype we can reduce the number of
complex typedefs that exist when writing device adapter algorithms.
The goal being that it is easier for developers to see the actual
algorithms being implemented, by reducing the amount of template
'noise'.
Previously ArrayHandleReverse would only work if it was provided an explicit
users array to map too. But this doesn't need to be so, if a user wants to
start by constructing an ArrayHandleReverse we should allow that.
The side effect of this, is that some very tricky code in the DeviceAdapters
can be removed, that explicitly was added to allow output to ArrayHandleReverse
The algorithm is parallelized using a custom Mapper and Canvas class.
It is parallelized over the expected pixels that will be colored,
blending with any previous color value. This does not use the depth buffer
and hence will naively overrwite all pixels while drawing a line segment.
Previously TransferToOpenGL would rely on every array handle implementing
the CopyInto method for transferring to work properly. This was problematic
as most Implicit arrays don't implement CopyInto.
Now we use the Devices built in Copy infrastructure to facilitate moving
data from an implicit array to concrete memory which we can be passed
to OpenGL. As an additional optimization, the temporary memory for this
interop is cached in the bufferstate.
df185a67 removing background colors from tracers. Background color is now the responsiblitiy of the canvas.
28b1e6b1 initializing ray color buffer to 0
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !881