Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - Serapis

#1481
Es probable que Crocia sea el 'campo de entrenamiento' de los 'hackers rusos'...
#1482
Guau... 600 cámaras por 30 millones, el montaje de cada cámara sale a 50.000 dólares cada una. Estoy seguro que ahí en Argentina (San Salvador) habrá viviendas nuevas o seminuevas que valgan 50.000 dólares. O lo que es lo mismo, montar una cámara mierdosa costará a los argentinos más que construir una vivienda.
#1483
Habrá que esperar a ver que sale...
Eso sí, odio el bluetooth... prefiero los auriculares.
#1484
Java / Re: Simulación gráfica animada
7 Julio 2019, 15:19 PM
Con 'síncrono' quiero señalar que recorres en orden correlativo todos los elementos, que no hay necesidad de acceder a un índice dado... (que es la situación (acceso aleatorio) donde un array supera a todas las otras estructuras), por lo que usar una lista enlazada es más adecuado (recurres a item.siguiente en los bucles), y la lista enlazada es más efectiva (que el array) para añadir y eliminar elementos dinámicamente.



p.d:
Con pocos elementos (5-20), añadir o eliminar a un array, no se aprecia retaso significativo. Cuando cambia el tamaño de un array se debe construir el nuevo array al completo, con la lista enlazada no se toca los no afectados, así si por ejemplo tuvieres 10.000.000 y luego pones 10.000.005 (que solo varía 5 elementos), el array tendría que generar un nuevo array y copiar los 10 millones previos... la lista enlazada solo afecta a esos 5 elementos, si nuevamente ahora reduces a 10.000.001 se debe volver a recontruir un nuevo array y copiar esos 10millones +1, la lista enlazada, simplemente deshecha los últimos 4.
#1485
Dudas Generales / Re: Lenguajes inutiles?
6 Julio 2019, 16:38 PM
Cuando no tienes el código fuente, la única manera restante, es entender ensamblador...

Otra cosa es a lo que tu amigo pudiera querer referirse... que para programar de froma productia (mucho volumen o muy rápido), resulta más óptimo hacerlo con lenguajes de alto nivel, por que te abstrae del funcionamiento de la máquina destino centrñandote solo en el problema y en la forma que tal lenguaje permite ...y en tal caso se usaría el ensamblador en detalles que requieran un 'extra' como velocidad ú obscurecer el código...

Por otro lado quien conoce ensamblador a fondo, está en condiciones de generar código más optimizado en lenguajes de alto nivel...
...aparte, ésto está en contínua evolución (los lenguajes de alto nivel, nuevos lenguajes), pero las bases son y serán las mismas (los lenguajes de bajo nivel, el funcionamiento de la CPU).

Bien creo que a tu amigo, lo que le sucede es que el ensamblador le aburre, suele pasar a los que no tienen paciencia. ...y por extensión el programador que no tenga paciencia, no tendrá mucho futuro, es un panorama muy amplio y hay mucho por estudiar incluso aunque se ocupe/dedique a algo muy específico.

#1486
Citar...supongo que de todas maneras España no hará nada porque la captura fue por petición de USA y esta es socia de España en lo militar y muchas cosas mas...
No debería hacer nada... pero teniendo en cuenta que es un gobienro socialista, como mínimo harán lo que siempre patalear y lloriquear, para apaciguar a sus votantes.

La sanción es europea, que luego la info y/o la petición venga de USA es otra cosa... se supone que USA realizará las alegaciones y demostraciones oportunas a los socios europeos.

Que se lo haya pedido a UK, podría ser porque vieran que tenían algún navió militar más cerca del petrolero que los de España, o quizás por las tonterías de Trump, de elegir un socio angloparlante, con el que (supongo), se sentirá más cómodo tratar.

Yo me conformo, mientras el petrolero, no derrame el crudo en la zona...
#1487
Pagar por no ver publicidad es simplemente chantaje, extorsión.
#1488
Java / Re: Simulación gráfica animada
5 Julio 2019, 18:15 PM
Pués me alegro que lo tengas solucionado...

Aunque veo demasiadas líneas de código...

La idea es crear un panel donde se presente todo, eso queda claro.
El panel debe alojar circulos, luego también procede crear una clase círculo con sus atributos...
...pero como son muchos, lo ideal es que se use una colección para contenerlos a todos. Un array puede valer, pero al caso iría mejor una lista  enlazada, después de todo, cualquier acción con ellas es síncrona, luego se trata de recorrer la colección y hacer lo mismo para cada objeto en dicha colección.

Luego hay un bucle principal que podría ser controlado por un temporizador (con eventos del ratón, no porque cuando permanece inmóvil, no tendríamos acciones). Es en dicho temporizador donde transcurre toda la acción. En los eventos del ratón simplemente actualizar las cordenadas actuales del ratón (esto es cuando se mueva, se actualizan las cordenadas compartidas a nivel del panel).


enumeracion DinamicaCirculos
   DINAMICA_CIRCULO_NADA = 0
   DINAMICA_CIRCULO_WALLS = 1
   DINAMICA_CIRCULO_FMOUSE = 2
   DINAMICA_CIRCULO_WALLS_FMOUSE = 3
fin enumeracion
Dinamicacirculos dinamica  // el valor se actualiza conforme se pulsen los 2 checkboxes.
lista enlazada colCirculos // para contener todos los circulos
int mouseX, MouseY
int numCirculos

funcion Panel_Mousemoved(int x, int Y)
  mouseX = x
  mouseY = y
fin funcion

funcion checkNumCirculos_Changed(int Valor)
    Si (valor < numCirculos)  // Eliminar sobrantes
         bucle para k desde numCirculos hasta valor regresivo
             colcirculos.DeleteLast  // elimina el que ahora está en último lugar. También podría eliminarse el primero (siempre hay 1 primero mientras no esté vacío).
         siguiente 
     Si (valor > numCirculos)  // añadir faltantes
         bucle para k desde numCirculos hasta valor
             colCirculos.Add(new circulo(a,b,c,d))  // añadir un nuevo círculo con los parámetros que proceda.
         siguiente         
     fin si

     numCirculos = valor
fin funcion

funcion Temporizador_elapsed
   Borrar panel
   por cada circulo en colCirculos
       circulo.Actualizar(mouseX, MouseY, dinamica)
   siguiente
fin funcion


Cuando cambia el valor (cantidad) de círculos, si es menor que el valor previo, señala que se deben eliminar los elementos que sobran de la colección. Si es mayor que se deben añadir. El color del círculo así como su posición incial, supongo que se eligen más o menos al azar (no veo descripción del caso), y la posición luego se va actualizando según 'danza' dicho círculo.
Ten en cuenta que cuanto más rápido (corto) sea el lapso del temporizador tanto menos tiempo necesitan los círculos para aproximarse al cursor... quizás haya un límite de proximidad tal que sobrepasado dicho valor, no se actulice, o se deje en el valor límite de proximidad.

La dinámica de cada uno de los 4 movimientos, no las describes en ningún momento, tan solo viendo el vídeo aclara en parte el asunto...
- 'with Walls', parece indicar que acepte rebotes al llegar a los bordes del panel, pero no queda claro que debe suceder sin rebotes (que si queda fuera del campo de visión no se dibuja, pero mantiene sus cordenadas actuales?, que las cordenadas actuales cambién como emergiendo desde el lado opuesto(conservando la dirección)?
- 'follow mouse', queda claro que cuando está activo, la marcha de cada círculo tiene en cuanta la proximidad a la posición actual del ratón, pero igualmente no queda claro que debe hacerse cuando dicha casilla no está activa.
Sea cual sea la dinámica aplicada para calcular la nueva posición del ´circulo, al final de dicho cálculo se dibuja.

Nota que en el método circulo.Actualizar, he puesto 3 parámetros, la posición actual del ratón (X e Y) y la dinámica que debe aplicarse, así tal método tendrá un 'if dinamica = 0 ...  ...albergando las 4 posibilidades. Haciéndolo así el código final resultanto sin duda debe ser muchísimo menor que las alrededor de 500 líneas de código que tienes... (en realidad esa función actualizar sería la que tendría todo el meollo del asunto), controlado por el bucle dentro dle temporizador.

Finalmente, además parece que todos los círculos giran en sentido horario, no observo ninguna que gire en sentido contrario, tampoco queda claro en parte alguna una descripción al respecto.

Pero, si al final has conseguido que te funcione, pués listo...
#1489
Existe la posibilidad de extensión que dices...

...pero no hay que olvidar los graves problemas de seguridad y privacidad que ha tenido, tiene (y fijo que tendrá) Facebook.
Luego lo que se podría extender como la pólvora también sería el robo de carteras, y transacciones con una 'moneda' a medio hacer (como a medio hacer está todo lo que sale de las manos del pimpollo del imperio 'feisbuq')....
#1490
Es el problema de malinterpretar la red.

Internet es la "red de carreteras", y debería acabar el acceso en el router, donde ya dentro fueran como los "edificios", donde solo sea posible recorrerlos "a pie", pero se quiere que la 'red' llegue hasta el fondo, luego así está diseñado y así errado y así todo chapucero...