private static void addGeometricConfiguration(IDoubleBondStereochemistry dbs, int flavour, GraphBuilder gb, Map<IAtom, Integer> indices) {

        IBond db = dbs.getStereoBond();
        IBond[] bs = dbs.getBonds();

        // don't try to set a configuration on aromatic bonds
        if (SmiFlavor.isSet(flavour, SmiFlavor.UseAromaticSymbols) && db.getFlag(CDKConstants.ISAROMATIC)) return;

        int u = indices.get(db.getBegin());
        int v = indices.get(db.getEnd());

        // is bs[0] always connected to db.atom(0)?
        int x = indices.get(bs[0].getOther(db.getBegin()));
        int y = indices.get(bs[1].getOther(db.getEnd()));

        if (dbs.getStereo() == TOGETHER) {
            gb.geometric(u, v).together(x, y);
        } else {
            gb.geometric(u, v).opposite(x, y);
        }
    }
private static void addGeometricConfiguration ( IDoubleBondStereochemistry dbs , int flavour , GraphBuilder gb , Map < IAtom , Integer > indices ) { IBond db = dbs . getStereoBond ( ) ; IBond [ ] bs = dbs . getBonds ( ) ; if ( SmiFlavor . isSet ( flavour , SmiFlavor . UseAromaticSymbols ) && db . getFlag ( CDKConstants . ISAROMATIC ) ) return ; int u = indices . get ( db . getBegin ( ) ) ; int v = indices . get ( db . getEnd ( ) ) ; int x = indices . get ( bs [ 0 ] . getOther ( db . getBegin ( ) ) ) ; int y = indices . get ( bs [ 1 ] . getOther ( db . getEnd ( ) ) ) ; if ( dbs . getStereo ( ) == TOGETHER ) { gb . geometric ( u , v ) . together ( x , y ) ; } else { gb . geometric ( u , v ) . opposite ( x , y ) ; } }
Add double-bond stereo configuration to the Beam GraphBuilder.

@param dbs     stereo element specifying double-bond configuration
@param gb      the current graph builder
@param indices atom indices