9 #ifndef hifi_GridEntityItem_h
10 #define hifi_GridEntityItem_h
12 #include "EntityItem.h"
14 #include "PulsePropertyGroup.h"
17 using Pointer = std::shared_ptr<GridEntityItem>;
25 virtual void setUnscaledDimensions(
const glm::vec3& value)
override;
28 EntityItemProperties getProperties(
const EntityPropertyFlags& desiredProperties,
bool allowEmptyDesiredProperties)
const override;
31 EntityPropertyFlags getEntityProperties(EncodeBitstreamParams& params)
const override;
33 void appendSubclassData(
OctreePacketData* packetData, EncodeBitstreamParams& params,
34 EntityTreeElementExtraEncodeDataPointer entityTreeElementExtraEncodeData,
35 EntityPropertyFlags& requestedProperties,
36 EntityPropertyFlags& propertyFlags,
37 EntityPropertyFlags& propertiesDidntFit,
39 OctreeElement::AppendState& appendState)
const override;
41 int readEntitySubclassDataFromBuffer(
const unsigned char* data,
int bytesLeftToRead,
42 ReadBitstreamToTreeParams& args,
43 EntityPropertyFlags& propertyFlags,
bool overwriteLocalData,
44 bool& somethingChanged)
override;
46 static const uint32_t DEFAULT_MAJOR_GRID_EVERY;
47 static const float DEFAULT_MINOR_GRID_EVERY;
49 void setColor(
const glm::u8vec3& color);
50 glm::u8vec3 getColor()
const;
52 void setAlpha(
float alpha);
53 float getAlpha()
const;
55 void setFollowCamera(
bool followCamera);
56 bool getFollowCamera()
const;
58 void setMajorGridEvery(uint32_t majorGridEvery);
59 uint32_t getMajorGridEvery()
const;
61 void setMinorGridEvery(
float minorGridEvery);
62 float getMinorGridEvery()
const;
64 PulsePropertyGroup getPulseProperties()
const;
69 PulsePropertyGroup _pulseProperties;
71 bool _followCamera {
true };
72 uint32_t _majorGridEvery { DEFAULT_MAJOR_GRID_EVERY };
73 float _minorGridEvery { DEFAULT_MINOR_GRID_EVERY };
Definition: EntityItem.h:82
Abstract ID for editing model items. Used in EntityItem JS API.
Definition: EntityItemID.h:28
Definition: EntityItemProperties.h:106
Handles packing of the data portion of PacketType_OCTREE_DATA messages.
Definition: OctreePacketData.h:93