Entrar
¿Nuevo usuario? Inscribirme
smalltalking · Un lugar para el estudio y desarrollo de Ambientes de Objetos virtuales.
? ¿Ya estás suscrito? Entra a Yahoo!

Consejos

¿Sabías que...?
Podés cambiar el orden de los mensajes. Simplemente hacé clic en el enlace de columna fecha. Tus preferencias se guardarán, por lo tanto no necesitarás hacerlo otra vez cuando vuelvas a entrar.

Mensajes

  Mensajes Ayuda
Avanzado
Pensando en objetos ?   Lista de mensajes  
Responder | Reenviar Mensaje #17180 de 17190 |
Re: [objetos] Pensando en objetos ?

kikoGregoris wrote (el 26/10):

> Gracias por responder y perdón la demora en mi respuesta.

No hay cuidado, yo me demoro más :-)

> La forma sirve, para dos cosas: 1) determinar cual es la región
> afectada por el brush , para luego levantar o bajar esos puntos. 2)
> En la imagen se ve que fuera de la region afectada, tambien debo
> levantar o bajar segun otro radio y segun un ángulo de inclinación
> que el usuario elija. Para  hacer esto debo calcular los puntos de
> frontera del brush y para eso uso la forma. Luego trato a los puntos
> por zonas, como se ve en la imagen.


Suena bien, pero por la ambigüedad del lenguaje natural, suena igual de bien si lo hace el brush que si lo hace un objeto forma separado.

> Cada vez que el brush se mueve y
> trata de modelar , recalculo la frontera. Es por eso que  es confuso,
> por un lado el recalcular la frontera todo el tiempo, me hace pensar
> que no vale la pena tener una clase Form a parte. Posiblemente no
> necesitaría una instancia y solo actuaria a nivel de clase(solo es un
> cálculo). Es curioso, si trabajara en C/C++ pondría un "IF circulate"
> y no me haría tanto drama jajaja.

Tener en un objeto separado la forma (ojo que Form es un formulario, el nombre sería Shape)
te fuerza en este esquema a que se tengan que comunicar cada vez que el pincel se mueve.
Eso no es grave pero no parece muy conveniente PERO depende de cuánto pueda variar la forma.
Si tenés sólo dos o tres, lo vas a poder resolver fácilmente con casos y distintos métodos.
Si son más, eso te va a complicar, agrandando mucho el protocolo de tu objeto
con mensajes que llevan dentro el "parámetro" de la forma. En ese caso, es más que
probable que te convenga tener otro objeto.

> Si entiendo. Otra cosa, el brush tiene dos modos de edición, aplanar
> o leventar. Para hacer esto, yo puse un colaborador sculpMode , que
> es un selector y luego hago un #perform: de este selector. Es una
> cosa que usó Ale en la demo de Genesis 3d, donde tenía dos modos para
> que la cámara  actuara frente a un actor. Podía mirar al actor desde
> un punto fijo, o seguirlo.
>
> El #perform:  mas costoso en computo que un #ifTrue: ?.

Bastante más costoso en general. Acá voto por el if sin dudar.
El #perform: es lindo pero genera rápidamente malas costumbres de
programación (como concatenar strings para armar selectores para hacer perform: después).
En cuanto a performance, generalmente te fuerza a hacer nuevamente un pedazo del method lookup.
Ese pedazo es más o menos grande,
dependiendo de cómo esté implementado el message lookup  y el code cache o el inlined code cache.
El if, en cambio, es inmediato. Se traduce a instrucciones de jump de código máquina casi directamente.
Y es mentira que el código sea "más limpio", si pusiste perform para esto, es un if disimulado.

Saludos


--
carlos e. ferro* *| senior developer* *|  *caesar systems *| *see clearly. decide smarter.*

ceferro@... <mailto:ceferro@...> | t: +1.281.598.8790 | t: +54.11.4389.0126 | www.caesarsystems.com <http://www.caesarsystems.com/>

**This message and any attached documents contain information from Caesar Systems LLC that may be confidential/trade secret and/or privileged. If you are not the intended recipient, you may not read, copy, distribute or use this information. If you have received this transmission in error, please notify the sender immediately by telephone or by reply e-mail and then delete this message.




Vie, 6 de Nov, 2009 4:53 pm

carloseferrob
Sin conexión Sin conexión
Enviar correo Enviar correo

Reenviar Mensaje #17180 de 17190 |
Desplegar mensajes Autor Ordenar por fecha

Hola gente Tengo un problema para modelar un objetos que llamo Brush, el cual se encarga de modelar un terreno. Como si fuera un formón de un carpintero. Este...
kikogregoris
Sin conexión Enviar correo
13 de Oct, 2009
2:12 pm

... se ... Es difcil decir que est mal sin saber cul es la responsabilidad/funcionalidad del objeto, qu protocolo tiene y cmo interacta con el resto. Los...
Carlos E. Ferro
carloseferrob
Sin conexión Enviar correo
14 de Oct, 2009
1:35 pm

Hola kiko, El pensar que un modelo (una descripción) es suficiente para determinar un objeto es incorrecto. Los objetos que uno ve/entiende son resultantes...
Alejandro F. Reimondo
alereimondo
Sin conexión Enviar correo
14 de Oct, 2009
7:56 pm

Hola Ale Ok, entiendo o creo entender a donde vas. La implementación funciona, solo me parecía que no era muy apropiada o que no estaba modelada de una forma...
kikogregoris
Sin conexión Enviar correo
26 de Oct, 2009
4:35 pm

... funciona, ... de ... Esto ... Yo creo que al programar pasa lo mismo que al escribir. Cuando uno empieza a escribir, hay dos posibilidades: o est...
Carlos E. Ferro
carloseferrob
Sin conexión Enviar correo
7 de Nov, 2009
4:02 pm

On Tue, 13 Oct 2009 06:34:33 -0700 (PDT) ... Hola. Segun lo que te entendí, tu dilema me parece que es el clásico Herencia vs Delegación. ¿A quien le doy...
Sebastian Gurin
cancerbero_sgx
Sin conexión Enviar correo
15 de Oct, 2009
2:08 pm

Hola Sebastian Ok,  gracias. Si es un problema de este tipo, el tema es que poner en otra clase la responsabiliad parece ser una cuestion algoritmica. Como la...
kikogregoris
Sin conexión Enviar correo
26 de Oct, 2009
4:35 pm

Hola Carlos Gracias por responder y perdón la demora en mi respuesta. Te comento brevemente de que trata el problema en la implementación, es posible que...
kikogregoris
Sin conexión Enviar correo
26 de Oct, 2009
5:44 pm

... demora en mi respuesta. No hay cuidado, yo me demoro ms :-) ... puntos ... Suena bien, pero por la ambigedad del lenguaje natural, suena igual de bien si...
Carlos E. Ferro
carloseferrob
Sin conexión Enviar correo
6 de Nov, 2009
5:38 pm
Avanzado

Copyright © 2009 Yahoo! de Argentina S.R.L. Todos los derechos reservados.
Política de privacidad - Condiciones del Servicio - Reglas de la comunidad de Yahoo! - Ayuda