Cómo funciona Hops

El proceso de comunicación entre Hops y un servidor compatible con Hops es un poco más matizado que el simple envío y recepción de una única petición y respuesta http. El primer paso del proceso se produce cuando Hops agrupa la definición de Grasshopper referenciada y envía una solicitud http a un punto final del servidor.

Un punto de conexión es una dirección URL a la que se puede acceder para realizar una determinada función. En esta petición, el servidor abre la definición de Grasshopper enviada desde Hops y determina qué información será necesaria para rellenar las entradas y salidas del componente Hops. Así, el punto final se llamará /io (abreviatura de Input Output).

https://developer.rhino3d.com/images/hops_io_request.png

El componente Hops debería tener ahora suficiente información para crear los nodos de entrada y salida necesarios para sí mismo.

https://developer.rhino3d.com/images/hops_get_inputs.png

Cuando todas las entradas de Hops se hayan conectado a los parámetros de origen, enviará otra petición http al servidor, solo que esta vez la enviará al punto de conexión /solve. No es necesario volver a enviar la definición de Grasshopper, ya que se almacenó en el servidor durante el proceso /io. En su lugar, los datos enviados en la petición /solve solo contienen un ID que indica al servidor dónde encontrar el archivo correcto y todos los datos de entrada.

La respuesta http del servidor contiene todos los datos que se obtendrían al ejecutar el archivo Grasshopper de la forma tradicional.

https://developer.rhino3d.com/images/hops_return_results.png

Para comprender mejor cómo funciona cada paso anterior, puede exportar la última solicitud y respuesta http para los puntos finales /io y /solve directamente desde el componente Hops.

https://developer.rhino3d.com/images/hops_export_requests.png