亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? picontactdetectiondescriptor.java

?? 化學圖形處理軟件
?? JAVA
字號:
/* $Revision: 9202 $ $Author: egonw $ $Date: 2007-10-25 11:54:10 +0200 (Thu, 25 Oct 2007) $ * * Copyright (C) 2004-2007  The Chemistry Development Kit (CDK) project * * Contact: cdk-devel@lists.sourceforge.net * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License * as published by the Free Software Foundation; either version 2.1 * of the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */package org.openscience.cdk.qsar.descriptors.atompair;import org.openscience.cdk.Molecule;import org.openscience.cdk.AtomContainerSet;import org.openscience.cdk.aromaticity.HueckelAromaticityDetector;import org.openscience.cdk.exception.CDKException;import org.openscience.cdk.graph.invariant.ConjugatedPiSystemsDetector;import org.openscience.cdk.interfaces.IAtom;import org.openscience.cdk.interfaces.IAtomContainer;import org.openscience.cdk.qsar.DescriptorSpecification;import org.openscience.cdk.qsar.DescriptorValue;import org.openscience.cdk.qsar.IAtomPairDescriptor;import org.openscience.cdk.qsar.result.BooleanResult;/** * This class checks if two atoms have pi-contact (this is true when there is * one and the same conjugated pi-system which contains both atoms, or directly * linked neighboors of the atoms). * * <p>This descriptor uses these parameters: * <table border="1"> *   <tr> *     <td>Name</td> *     <td>Default</td> *     <td>Description</td> *   </tr> *   <tr> *     <td>firstAtom</td> *     <td>0</td> *     <td>The position of the first atom</td> *   </tr> *   <tr> *     <td>secondAtom</td> *     <td>0</td> *     <td>The position of the second atom</td> *   </tr> *   <tr> *     <td>checkAromaticity</td> *     <td>false</td> *     <td>True is the aromaticity has to be checked</td> *   </tr> * </table> * * @author         mfe4 * @cdk.created    2004-11-03 * @cdk.module     qsar * @cdk.set        qsar-descriptors * @cdk.dictref    qsar-descriptors:piContact */public class PiContactDetectionDescriptor implements IAtomPairDescriptor {    private boolean checkAromaticity = false;    AtomContainerSet acSet = null;    private IAtomContainer acold=null;    /**     * Constructor for the PiContactDetectionDescriptor object.     */    public PiContactDetectionDescriptor() { }    /**     * Gets the specification attribute of the PiContactDetectionDescriptor object.     *     * @return    The specification value     */    public DescriptorSpecification getSpecification() {        return new DescriptorSpecification(                "http://www.blueobelisk.org/ontologies/chemoinformatics-algorithms/#piContact",                this.getClass().getName(),                "$Id: PiContactDetectionDescriptor.java 9202 2007-10-25 09:54:10Z egonw $",                "The Chemistry Development Kit");    }    /**     * Sets the parameters attribute of the PiContactDetectionDescriptor object.     *     * @param  params Parameters contains a     *                boolean (true if is needed a checkAromaticity)     * @exception     CDKException  Description of the Exception     */    public void setParameters(Object[] params) throws CDKException {        if (params.length != 1) {            throw new CDKException("PiContactDetectionDescriptor expects 1 parameters");        }        if (!(params[0] instanceof Boolean)) {            throw new CDKException("The first parameter must be of type Boolean");        }        checkAromaticity = ((Boolean) params[0]).booleanValue();    }    /**     * Gets the parameters attribute of the PiContactDetectionDescriptor object.     *     * @return    The parameters value     */    public Object[] getParameters() {        // return the parameters as used for the descriptor calculation        Object[] params = new Object[1];        params[0] = new Boolean(checkAromaticity);        return params;    }    /**     * The method returns if two atoms have pi-contact.     *     * @param  atomContainer                AtomContainer     * @return                   true if the atoms have pi-contact     * @exception  CDKException  Possible Exceptions     */    public DescriptorValue calculate(IAtom first, IAtom second, IAtomContainer atomContainer) throws CDKException {        IAtomContainer ac;        try {            ac = (IAtomContainer) atomContainer.clone();        } catch (CloneNotSupportedException e) {            throw new CDKException("Error during clone");        }        IAtom clonedFirst = ac.getAtom(atomContainer.getAtomNumber(first));        IAtom clonedSecond = ac.getAtom(atomContainer.getAtomNumber(first));        Molecule mol = new Molecule(ac);        if (checkAromaticity) {            HueckelAromaticityDetector.detectAromaticity(mol);        }        boolean piContact = false;        int counter = 0;        if(acold!=ac){          acold=ac;          acSet = ConjugatedPiSystemsDetector.detect(mol);        }        java.util.Iterator detected = acSet.atomContainers();        java.util.List neighboorsFirst = mol.getConnectedAtomsList(clonedFirst);        java.util.List neighboorsSecond = mol.getConnectedAtomsList(clonedSecond);        while (detected.hasNext()) {        	IAtomContainer detectedAC = (IAtomContainer)detected.next();            if (detectedAC.contains(clonedFirst) && detectedAC.contains(clonedSecond)) {                counter += 1;                break;            }            if (isANeighboorsInAnAtomContainer(neighboorsFirst, detectedAC) && isANeighboorsInAnAtomContainer(neighboorsSecond, detectedAC)) {                counter += 1;                break;            }        }        if (counter > 0) {            piContact = true;        }        return new DescriptorValue(getSpecification(), getParameterNames(), getParameters(), new BooleanResult(piContact));    }    /**     * Gets if neighboors of an atom are in an atom container.     *     * @param  neighs  array of atoms     * @param  ac      AtomContainer     * @return         The boolean result     */    private boolean isANeighboorsInAnAtomContainer(java.util.List neighs, IAtomContainer ac) {        boolean isIn = false;        int count = 0;        for (int i = 0; i < neighs.size(); i++) {            if (ac.contains((IAtom)neighs.get(i))) {                count += 1;            }        }        if (count > 0) {            isIn = true;        }        return isIn;    }    /**     * Gets the parameterNames attribute of the PiContactDetectionDescriptor     * object.     *     * @return    The parameterNames value     */    public String[] getParameterNames() {        String[] params = new String[1];        params[0] = "checkAromaticity";        return params;    }    /**     * Gets the parameterType attribute of the PiContactDetectionDescriptor object.     *     * @param  name  Description of the Parameter     * @return       The parameterType value     */    public Object getParameterType(String name) {        if (name.equals("checkAromaticity")) return new Boolean(true);        return null;    }}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲aaa精品| 奇米精品一区二区三区在线观看一| 欧美一区二区精品| 欧美在线播放高清精品| 欧美亚洲国产一区二区三区 | 三级欧美韩日大片在线看| 一区二区三区鲁丝不卡| 亚洲综合丁香婷婷六月香| 亚洲一区二区黄色| 日日夜夜免费精品视频| 日韩二区三区四区| 韩国欧美国产1区| 国产黑丝在线一区二区三区| 国产.欧美.日韩| 在线日韩一区二区| 91精品国产综合久久精品性色| 日韩精品一区二区三区视频播放| 欧美v日韩v国产v| 国产人久久人人人人爽| 国产精品久久99| 一区二区在线看| 奇米一区二区三区av| 丁香激情综合国产| 欧美优质美女网站| 欧美成人女星排名| 亚洲视频在线一区二区| 视频一区视频二区中文字幕| 国产一区不卡在线| 91同城在线观看| 91精品国产高清一区二区三区蜜臀| 精品国产sm最大网站| 最新国产の精品合集bt伙计| 日本三级亚洲精品| 成人app下载| 欧美一级理论片| 国产精品乱码一区二区三区软件 | 久久久久亚洲蜜桃| 亚洲色图一区二区三区| 免费的国产精品| 色综合久久综合网欧美综合网| 日韩欧美成人午夜| 18欧美乱大交hd1984| 久久精品国产99国产| 99精品欧美一区二区蜜桃免费| 欧美丰满一区二区免费视频 | 亚洲一区二区三区小说| 国产盗摄女厕一区二区三区 | 国产农村妇女毛片精品久久麻豆| 亚洲一区二区三区美女| 国产精品影视在线观看| 日韩一级黄色片| 亚洲成人av中文| 91视频www| 国产精品久久久久久久久免费樱桃| 免费xxxx性欧美18vr| 色综合久久综合| 国产精品乱人伦中文| 国产精品综合一区二区三区| 在线不卡a资源高清| 亚洲精品中文在线影院| 成人精品免费网站| 亚洲国产精华液网站w| 国产毛片精品国产一区二区三区| 日韩一区二区中文字幕| 日本中文字幕一区| 欧美一区二区三区四区视频| 亚洲成人免费视频| 欧美日韩精品一区二区| 亚洲成人激情综合网| 不卡电影一区二区三区| 国产精品美女久久久久久久网站| 国产成人午夜高潮毛片| 国产午夜精品一区二区三区四区| 国产一区二区网址| 久久久国产午夜精品| 国内久久精品视频| 国产欧美日韩一区二区三区在线观看 | 成人avav影音| 中文字幕亚洲综合久久菠萝蜜| 国产91丝袜在线播放九色| 久久久久久久久久久99999| 国产乱一区二区| 国产精品日韩成人| 色综合久久综合网欧美综合网| 亚洲黄色av一区| 欧美日韩成人一区| 久草热8精品视频在线观看| 精品国产精品网麻豆系列| 东方aⅴ免费观看久久av| 国产精品国产三级国产普通话99| 99国产麻豆精品| 亚洲成a人v欧美综合天堂 | 成人自拍视频在线观看| 中文字幕中文乱码欧美一区二区| 色婷婷精品久久二区二区蜜臂av| 午夜国产不卡在线观看视频| 精品国产一区久久| 国产91丝袜在线18| 亚洲自拍都市欧美小说| 日韩一本二本av| 岛国av在线一区| 性感美女极品91精品| 精品欧美一区二区久久| 91视频在线观看免费| 日本中文一区二区三区| 国产精品三级视频| 一区二区三区**美女毛片| 成人av免费观看| 亚洲五码中文字幕| 精品国产乱码久久久久久老虎| 不卡一二三区首页| 美女视频一区在线观看| 亚洲欧洲精品成人久久奇米网| 欧美精品123区| 99麻豆久久久国产精品免费优播| 日韩高清不卡一区| 欧美午夜精品理论片a级按摩| 午夜精品福利一区二区蜜股av | 51精品国自产在线| 不卡视频一二三| 精品一区二区综合| 亚洲一卡二卡三卡四卡五卡| 国产午夜精品久久久久久免费视| 欧美人牲a欧美精品| 不卡的av网站| 国产精品99久久久久久似苏梦涵| 亚洲成人自拍一区| 一区二区三区不卡在线观看 | 国产精品1024久久| 日韩中文字幕亚洲一区二区va在线| 国产精品久久网站| 欧美成人bangbros| 欧美精选一区二区| 色综合久久天天| 成人黄色小视频在线观看| 精品中文字幕一区二区小辣椒 | 日韩欧美www| 91久久国产综合久久| 成人激情黄色小说| 国产高清不卡二三区| 国产一区二区在线观看视频| 免费在线观看成人| 免费成人美女在线观看.| 亚洲国产一区视频| 亚洲国产精品麻豆| 亚洲综合色区另类av| 亚洲日本丝袜连裤袜办公室| 亚洲四区在线观看| 亚洲人123区| 亚洲精品国产精品乱码不99| 亚洲欧美经典视频| 亚洲精品日日夜夜| 亚洲夂夂婷婷色拍ww47| 亚洲一区二区视频在线| 亚洲一区二三区| 亚洲综合色噜噜狠狠| 亚洲成人av电影| 久久精品二区亚洲w码| 免费一级片91| 国内外成人在线| 成人app在线观看| 色琪琪一区二区三区亚洲区| 欧美日韩视频在线观看一区二区三区| 91官网在线观看| 欧美精品久久99| 欧美白人最猛性xxxxx69交| 精品剧情在线观看| 欧美国产一区二区| 亚洲精品欧美在线| 石原莉奈一区二区三区在线观看| 久久99精品久久久| 国产盗摄精品一区二区三区在线| 成人一区二区三区| 欧美综合在线视频| 日韩欧美一区中文| 国产精品素人视频| 香港成人在线视频| 国产永久精品大片wwwapp| 91蜜桃免费观看视频| 欧美日韩高清一区| 久久久精品国产免费观看同学| 国产精品久久久久婷婷| 午夜精品久久久久久久99樱桃| 久久精品国产在热久久| 不卡av在线免费观看| 欧美老肥妇做.爰bbww| 欧美韩国日本一区| 午夜激情综合网| 波多野结衣在线aⅴ中文字幕不卡| 日本二三区不卡| 久久久久久影视| 婷婷成人综合网| av不卡免费在线观看| 日韩三级视频在线看| 日韩毛片高清在线播放| 狠狠色丁香婷婷综合| 精品视频一区三区九区| 国产精品无圣光一区二区| 全国精品久久少妇| 色又黄又爽网站www久久|