From 0429454936aa440dd285da98ced9afd6abbe96cd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Ag=C3=BCero?= Date: Fri, 18 Dec 2020 17:08:00 +0100 Subject: [PATCH 1/3] Adding a particle emitter message. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Carlos Agüero --- proto/ignition/msgs/particle_emiter.proto | 99 +++++++++++++++++++++++ 1 file changed, 99 insertions(+) create mode 100644 proto/ignition/msgs/particle_emiter.proto diff --git a/proto/ignition/msgs/particle_emiter.proto b/proto/ignition/msgs/particle_emiter.proto new file mode 100644 index 00000000..8e83985a --- /dev/null +++ b/proto/ignition/msgs/particle_emiter.proto @@ -0,0 +1,99 @@ +/* + * Copyright (C) 2020 Open Source Robotics Foundation + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * +*/ + +syntax = "proto3"; +package ignition.msgs; +option java_package = "com.ignition.msgs"; +option java_outer_classname = "ParticleEmitterProtos"; + +/// \ingroup ignition.msgs +/// \interface ParticleEmitter +/// \brief Message for a particle emitter. + +import "ignition/msgs/color.proto"; +import "ignition/msgs/header.proto"; +import "ignition/msgs/material.proto"; +import "ignition/msgs/pose.proto"; +import "ignition/msgs/vector3d.proto"; + +message ParticleEmitter +{ + /// \brief Optional header data. + Header header = 1; + + /// \brief The emitter name. + string name = 2; + + /// \brief All possible emitter types. + enum EmitterType + { + /// \brief Point emitter. + POINT = 0; + /// \brief Box emitter. + BOX = 1; + /// \brief Cylinder emitter. + CYLINDER = 2; + /// \brief Ellipsoid emitter. + ELLIPSOID = 3; + } + /// \brief The emitter type. + EmitterType type = 3; + + /// \brief The position of the emitter. + Pose pose = 4; + + /// The size of the emitter where the particles are sampled. + Vector3d size = 5; + + /// \brief How many particles per second should be emitted. + float rate = 6; + + /// \brief The number of seconds the emitter is active. + float duration = 7; + + /// \brief Whether particle emitter is enabled or not. + bool emitting = 8; + + /// \brief The particle dimensions (width, height, depth). + Vector3d particle_size = 9; + + /// \brief The number of seconds each particle will ’live’ for before + /// being destroyed. + float lifetime = 10; + + /// \brief The material which all particles in the emitter will use. + Material material = 11; + + /// \brief The minimum velocity each particle is emitted (m/s). + float min_velocity = 12; + + /// \brief The maximum velocity each particle is emitted (m/s). + float max_velocity = 13; + + /// \brief The starting color of the particles. + Color color_start = 14; + + /// \brief The end color of the particles. + Color color_end = 15; + + /// \brief The amount by which to scale the particles in both x and y + /// direction per second. + float scale_rate = 16; + + /// \brief The path to the color image used as an affector. + string color_range_image = 17; +} From 15c5da32a128ed29d95d80bee17c53806c08c9bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Ag=C3=BCero?= Date: Wed, 20 Jan 2021 18:23:40 +0100 Subject: [PATCH 2/3] Tweaks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Carlos Agüero --- ...le_emiter.proto => particle_emitter.proto} | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) rename proto/ignition/msgs/{particle_emiter.proto => particle_emitter.proto} (77%) diff --git a/proto/ignition/msgs/particle_emiter.proto b/proto/ignition/msgs/particle_emitter.proto similarity index 77% rename from proto/ignition/msgs/particle_emiter.proto rename to proto/ignition/msgs/particle_emitter.proto index 8e83985a..a95e1d56 100644 --- a/proto/ignition/msgs/particle_emiter.proto +++ b/proto/ignition/msgs/particle_emitter.proto @@ -1,5 +1,5 @@ /* - * Copyright (C) 2020 Open Source Robotics Foundation + * Copyright (C) 2021 Open Source Robotics Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -38,6 +38,9 @@ message ParticleEmitter /// \brief The emitter name. string name = 2; + /// \brief Unique Id. + uint32 id = 3; + /// \brief All possible emitter types. enum EmitterType { @@ -51,49 +54,49 @@ message ParticleEmitter ELLIPSOID = 3; } /// \brief The emitter type. - EmitterType type = 3; + EmitterType type = 4; /// \brief The position of the emitter. - Pose pose = 4; + Pose pose = 5; /// The size of the emitter where the particles are sampled. - Vector3d size = 5; + Vector3d size = 6; /// \brief How many particles per second should be emitted. - float rate = 6; + float rate = 7; /// \brief The number of seconds the emitter is active. - float duration = 7; + float duration = 8; /// \brief Whether particle emitter is enabled or not. - bool emitting = 8; + bool emitting = 9; /// \brief The particle dimensions (width, height, depth). - Vector3d particle_size = 9; + Vector3d particle_size = 10; /// \brief The number of seconds each particle will ’live’ for before /// being destroyed. - float lifetime = 10; + float lifetime = 11; /// \brief The material which all particles in the emitter will use. - Material material = 11; + Material material = 12; /// \brief The minimum velocity each particle is emitted (m/s). - float min_velocity = 12; + float min_velocity = 13; /// \brief The maximum velocity each particle is emitted (m/s). - float max_velocity = 13; + float max_velocity = 14; /// \brief The starting color of the particles. - Color color_start = 14; + Color color_start = 15; /// \brief The end color of the particles. - Color color_end = 15; + Color color_end = 16; /// \brief The amount by which to scale the particles in both x and y /// direction per second. - float scale_rate = 16; + float scale_rate = 17; /// \brief The path to the color image used as an affector. - string color_range_image = 17; + string color_range_image = 18; } From 2494142d90caadc44a632f5241ce071952433f94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Ag=C3=BCero?= Date: Fri, 29 Jan 2021 18:42:42 +0100 Subject: [PATCH 3/3] Tweak MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Carlos Agüero --- proto/ignition/msgs/particle_emitter.proto | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/proto/ignition/msgs/particle_emitter.proto b/proto/ignition/msgs/particle_emitter.proto index a95e1d56..6d68882c 100644 --- a/proto/ignition/msgs/particle_emitter.proto +++ b/proto/ignition/msgs/particle_emitter.proto @@ -94,7 +94,7 @@ message ParticleEmitter Color color_end = 16; /// \brief The amount by which to scale the particles in both x and y - /// direction per second. + /// direction per second (screen coordinates). float scale_rate = 17; /// \brief The path to the color image used as an affector.