libera/#clasp - IRC Chatlog
Search
13:03:04
drmeister
yitzi: If I wanted to throw some graphic objects into that rendering - how would I do it?
13:03:39
drmeister
I have the centroid and normal for a plane that minimizes the distance between the atoms of a ring to the plane.
13:03:55
drmeister
How can I throw up a ball to represent the centroid and a small square to represent the plane?
13:05:11
yitzi
drmeister: You would add shapes. There are some examples here https://github.com/yitzchak/ngl-clj/blob/main/examples/shape.ipynb
13:06:07
Bike
another thing on my todo list is to add a verbose mode so the compiler will tell you when it uses unboxed arithmetic and doesn't
13:06:18
Bike
as hopefully sort of a prelude to the sort of messages sbcl gives you on high optimization settings
13:06:23
drmeister
If I already have a view like this... Can I add them to the view after I generate it?
13:07:53
drmeister
(class-of view) -> #<The JUPYTER/WIDGETS:TRAIT-METACLASS RESIZABLE-BOX:RESIZABLE-GRID-BOX>
13:18:51
drmeister
In the last year we developed the capability to synthesize billions of different molecules that look like this.
13:19:47
drmeister
They are like little peg boards that you can attach bits of drugs that bind proteins.
13:20:31
drmeister
I'm going to make a structural database of all of them and put it online for people to dock to protein surfaces from structures that are in the Brookhaven Protein Databank and protein structures that are coming out of AlphaFold.
13:20:36
yitzi
drmeister: Apparently I added a keyword `:shapes` to do this https://github.com/cando-developers/cando/blob/5f4950d97c3d3dd8d043737fbf63389b07f125bd/src/lisp/cando-widgets/show.lisp#L209
13:22:12
drmeister
When I'm using jupyterlab sometimes I select a cell and hit 'x' or 'c' and nothing happens.
13:22:44
drmeister
I have to select inside the input box and then select the cell and then these single key commands work.
13:37:50
drmeister
Occasionally I get monsters from the model building. Monsters have bonds sticking through rings. I need to detect these and restart the model building.
13:39:14
drmeister
So here I'm starting by building a plane for each ring and then looking for bonds that have atoms on opposite sides of the plane and then run a test if the bond is going through the inside of the ring using cross products or something.
13:39:57
drmeister
I don't want to write all this stuff in C++ because it's brittle and time consuming to debug and change.
13:47:58
Bike
got cl:float inlined. main thing left for floating point arithmetic is the truncate family, but i think i'll try fixnum conversions first
13:49:35
drmeister
Unknown CHANGE-CLASS initialization arguments for #<The STANDARD-CLASS CLEAVIR-BIR:VARIABLE> to #<The STANDARD-CLASS VARIABLE>: (:RTYPE)
13:57:24
drmeister
./cleavir/bir-to-bmir.lisp343: (change-class datum 'cc-bmir:phi :rtype (phi-rtype datum)))
13:59:08
Bike
the rtype slot is its representation, like whether it's tagged or an unboxed float or what
14:00:36
Bike
i guess it could be a class named variable in some other package, but i don't know what that would be
14:00:49
Bike
if you could compile that file directly (like with compile-file) so a useful backtrace comes up that could help
14:27:57
drmeister
That's not the best way to express myself. I'm asking a question that probably has the answer "no" because you didn't predict my whims when you were implementing this.
14:28:35
drmeister
Your code is awesome - I don't want to make it look like it's coming up short in any way. It's freaking awesome.
14:29:49
yitzi
No worries. It doesn't look like the color includes opacity. Maybe it is set somewhere else. Looking...
14:34:28
yitzi
For a shape the default representation is a buffer-representation. The default constructor create one for you.
14:34:40
yitzi
Here https://github.com/yitzchak/ngl-clj/blob/33ce353a3b937629cbbbaff7c805443272ee0d91/lisp/component.lisp#L143
14:35:58
yitzi
We could add a `:shape-opacity` key to show and then send it the constructor. Or `:shape-rep-initargs`
14:55:22
drmeister
::notify Bike Check the log - here is a backtrace. I use udb on linux and I can see Common Lisp frames.
14:58:26
drmeister
yitzi: Thank you very much for your help. I'll be back later and turn this into a structure cleanup tool. Being able to visualize things will make it a lot easier to debug.