15 #include <vsg/app/Camera.h>
16 #include <vsg/app/Window.h>
17 #include <vsg/nodes/Group.h>
32 std::set<std::pair<const Object*, uint32_t>> visited;
34 bool visit(
const Object*
object, uint32_t index);
36 void apply(
Object&
object)
override;
39 void apply(
View& view)
override;
49 VkExtent2D previous_extent;
50 VkExtent2D new_extent;
51 std::set<std::pair<const Object*, uint32_t>> visited;
55 template<
typename T,
typename R>
56 T scale_parameter(T original, R extentOriginal, R extentNew)
58 if (original ==
static_cast<T
>(extentOriginal))
return static_cast<T
>(extentNew);
59 return static_cast<T
>(
static_cast<float>(original) *
static_cast<float>(extentNew) /
static_cast<float>(extentOriginal) + 0.5f);
62 void scale_rect(VkRect2D& rect);
68 void apply(
Object&
object)
override;
71 void apply(
View& view)
override;
BindGraphicsPipeline state command encapsulates the vkCmdBindPipeline call for a GraphicsPipeline.
Definition: GraphicsPipeline.h:105
ClearAttachments command encapsulates vkCmdClearAttachments functionality and associated settings.
Definition: ClearAttachments.h:22
Definition: StateGroup.h:32
Definition: WindowResizeHandler.h:27
View is a Group class that pairs a Camera that defines the view with a subgraph that defines the scen...
Definition: View.h:36
WindowResizeHandler class for updating viewport/scissor and attachments to fit with new window dimens...
Definition: WindowResizeHandler.h:45
bool visit(const Object *object, uint32_t index=0)
return true if the object was visited