2011-02-17 26 views
5

¿Cómo puedo representar las reacciones químicas en forma de ventanas? Estoy usando el lenguaje C#. Es posible representar fórmulas matemáticas usando mimetxt.dll, pero ¿qué ocurre con las reacciones químicas?¿Cómo procesar las reacciones químicas en Windows Forms?

En resumen, quiero representar el triunfo formas 2H2 + O2 = 2H2O y complejas formas en formato adecuado como:

enter image description here

¿Cómo puedo lograr esto?

+0

¿por qué?cualquier razón ? –

+2

Existen algunos controles ActiveX comerciales para ese propósito, prueba google "dibujo de estructura química ActiveX". –

+0

Gracias por la guía, pero no encontré tal activeX existe. ayuda por favor –

Respuesta

4

Esto no es realmente el tipo de pregunta simple que probablemente obtenga una buena respuesta.

Alguien que está trabajando en el campo de la química podría saber de una biblioteca auxiliar que se puede utilizar para dibujar este tipo de diagramas. Pero debe esperar que alguien con ese conocimiento especializado exista y advierta su pregunta. Alternativamente, tendrá que escribir todo el código usted mismo y dado que desea representar diagramas arbitrariamente complejos, esta es una tarea no trivial.

Recomiendo tratar de encontrar software comercial para dibujar diagramas y preguntar a esas compañías si puede dibujar lo que necesita. Empresas como Dundas y SoftwareFX valen la pena probar primero. También intente buscar aplicaciones comerciales utilizadas en las industrias químicas para ver si alguien más dibuja estas cosas y vea si puede preguntarles cómo lo hicieron.

+0

gracias por la dirección correcta. Estaba buscando esto desde los últimos dos días. permítame probar su orientación –

+0

También podría darle una llamada a yWorks (http://www.yworks.com/en/index.html) y ver si su software puede hacer lo que necesita (según los documentos es capaz de dibujar " redes de reacción bioquímica ". No pretendo saber lo que eso significa :) – MattDavey

+0

Muy agradecido. pero encontré el MimeText.dll que se basa en el Letex. Entonces, ¿Mimetext también admite dibujos de estructuras químicas? –

0

Esto puede ser demasiado tarde para tus propósitos, pero he estado usando OpenBabel con gran éxito. He podido convertir entre Canonical SMILES, archivos SDF, etc. en formatos PNG y SVG. (Enchufe desvergonzado) Puede encontrar un example en acción usando el cuaderno IPython en mi blog. Está en C++, pero tiene enlaces de Python también.

0

Hay algunos productos comerciales que pueden cumplir sus requisitos. Sin embargo, si busca soluciones de código abierto, como la mayoría de los químicos, aquí hay algunas recomendaciones basadas en mis propias experiencias.

Dado que está utilizando .NET, el kit de herramientas Indigo del software GGA es una buena opción. http://www.ggasoftware.com/opensource/indigo Tiene una documentación API muy fácil de leer con muchos ejemplos. El módulo de renderizado de Indigo puede representar imágenes de moléculas y reacciones de varios formatos de archivo (SMILES, mol, sdf, rdf, rxn, etc.) con muy buena calidad. Creo que puede cumplir con la mayoría de sus requisitos para generar una reacción química.

Yo mismo he estado usando OpenBabel por bastante tiempo. También es una herramienta de desarrollo muy buena para la quimioinformática. Está escrito en C++ y tiene un enlace .NET también. Algunas de las funciones avanzadas no están incluidas en la versión NET de la biblioteca, pero estoy bastante seguro de que se incluye el módulo de renderizado. La calidad de la imagen es tan buena como la de Indigo, pero el documento API no es tan fácil de usar. Además, debe instalar todo el paquete antes de poder usarlo. Si está desarrollando una aplicación Webform utilizando ASP.NET, puede tener problemas de autorización para acceder a los códigos locales en el servidor. Tengo que decir que es un dolor en el *.

También hay software de Chemaxon que puede hacer el trabajo de renderizado para usted también. Es un software comercial, pero algunas funciones básicas como la representación de una reacción son gratuitas. Está basado en Java pero tiene un enlace NET. La documentación de API está bien. Por supuesto, debe instalar Java en su computadora.

+0

página web actualizada de indigo: http://www.epam.com/industries/healthcare-and-life-sciences/life-sciences-open-source.html – kmote