-
Notifications
You must be signed in to change notification settings - Fork 7
Potential Field Line Field
Alexsandro edited this page Oct 30, 2020
·
8 revisions
Campos Potenciais
Parametro | Função |
---|---|
target | (x, y) centro do campo potencial, pode ser uma função dinâmica, em metros |
decay | Função matemática, preferencialmente deve ter domínio e imagem entre [0, 1] |
theta | Angulo, em radianos, usado para definir o angulo da reta |
line_size | Tamanho da reta apartir do centro em m/s, alem desse tamanho o campo não tem efeito |
line_dist | Tamanho do campo potencial em m/s em direção a reta onde a função decaimento tem efeito, alem desse tamanho o robo é atraido com velocidade maxima |
inverse | Campo opcional, true para que o campo seja de repulsão, por padrão é false e o campo sera de atração |
line_dist_max | Tamanho do campo potencial em m/s em direção a reta onde o campo funciona, alem dele o robo não sofre efeito do campo |
line_size_single_side | Campo opcional, true para que a linha seja projetada para apenas um direção em relação ao ponto target. Por padrão sera projetado nas duas direções |
line_dist_single_side | Campo opcional, true para que o campo da linha seja projetada para apenas um direção em relação ao ponto target. Por padrão sera projetado nas duas direções |
multiplier | Velocidade máxima desse comportamento, em m/s |
field_limits | Aplica as dimensoes do campo, caso você deseje que a função não funcione fora do campo (por exemplo, dentro dos gols) |
self.field.add_field(
algorithims.fields.LineField(
self.match,
target = (0.75, 0.65),
theta = math.pi/2,
line_size = 0.5,
line_dist = 0.25,
line_dist_max = 0.5,
decay = lambda x: x,
multiplier = 0.5
)
)