TaskAnimateEntity
Espacio de nombres: Digi21.DigiNG.Plugin.TaskPanel
Ensamblado: Digi21.DigiNG.Plugin
Tarea del panel de tareas que, al hacer doble clic, resalta una entidad durante unos segundos, sin mover la ventana de dibujo.
public class TaskAnimateEntity : TaskBase
Herencia: TaskBase → TaskAnimateEntity. Implementa ITask. Clase derivada: TaskZoomEntity.
La tarea se añade al panel con Digi3D.Tasks.Add.
Constructores
public TaskAnimateEntity()
public TaskAnimateEntity(Entity entity, int seconds, string title, TaskSeverity severity)
public TaskAnimateEntity(Entity entity, int seconds, string title, TaskSeverity severity, string drawingFile, string module)
public TaskAnimateEntity(Entity entity, int seconds, string title, TaskSeverity severity, string drawingFile, string module, ITask[] children)
| Parámetro | Descripción |
|---|---|
entity |
Entidad que se resalta. Se devuelve en Entity. |
seconds |
Segundos durante los que se resalta la entidad. Se devuelve en Seconds. |
title |
Texto de la tarea en el panel de tareas. |
severity |
Gravedad de la tarea, de la enumeración TaskSeverity. |
drawingFile |
Archivo de dibujo al que se refiere la tarea. |
module |
Nombre del módulo que ha generado la tarea, por ejemplo el nombre de la orden. |
children |
Tareas hijas. |
El constructor sin parámetros deja Entity, Title, DrawingFile, Module y Children a null, Seconds a 0 y Severity a TaskSeverity.Error.
Propiedades
| Propiedad | Descripción |
|---|---|
Entity Entity { get; set; } |
Entidad que se resalta. |
int Seconds { get; set; } |
Segundos durante los que se resalta la entidad. |
Propiedades heredadas de TaskBase: Title, Severity, DrawingFile, Module y Children.
Métodos
| Método | Descripción |
|---|---|
void Execute() |
Digi3D.AI lo llama al hacer doble clic en la tarea. Si Entity no es null, dibuja la entidad como seleccionada durante Seconds segundos. Si Entity es null, no hace nada. Lanza NullReferenceException si Entity no es null y no hay ninguna ventana de dibujo abierta. |
Ejemplo
Esta orden añade un mensaje por cada texto no eliminado del archivo de dibujo que contiene la cadena que recibe como parámetro. Al hacer doble clic en una tarea, el texto se resalta durante 2 segundos:
using Digi21.Digi3D;
using Digi21.DigiNG.Entities;
using Digi21.DigiNG.Plugin.Command;
using Digi21.DigiNG.Plugin.TaskPanel;
using Digi21.Tasks;
namespace Ejemplos;
[Command(Name = "BUSCA_TEXTO")]
public class BuscaTexto : Command
{
public BuscaTexto()
{
Initialize += (sender, e) =>
{
if (Args.Length != 1)
{
Digi3D.ShowBallon("BUSCA_TEXTO", "Uso: BUSCA_TEXTO=cadena", 3, BallonIcon.Error);
Dispose();
return;
}
var archivo = Digi21.DigiNG.DigiNG.DrawingFile;
var textos = archivo
.OfType<ReadOnlyText>()
.Where(texto => !texto.Deleted && texto.Txt.Contains(Args[0]));
foreach (var texto in textos)
{
Digi3D.Tasks.Add(new TaskAnimateEntity(
texto,
2,
texto.Txt,
TaskSeverity.Message,
archivo.Path,
"BUSCA_TEXTO"));
}
Digi3D.Tasks.Show();
Dispose();
};
}
}