pyautocad 发送消息到消息栏 acad.doc.Utility.Prompt

python 复制代码
@app.route('/command/echo', methods=['GET', 'POST'])
def echo_command():
    """
    在AutoCAD命令行显示文本信息
    
    For GET requests:
        Query Parameters:
            message: 要显示在命令行的文本消息
    
    For POST requests:
        Request Body:
            message: 要显示在命令行的文本消息
    
    Returns:
        JSON格式的操作结果
    """
    try:
        # 根据请求方法获取消息参数
        if request.method == 'GET':
            message = request.args.get('message', '')
        else:  # POST
            data = request.get_json()
            message = data.get('message', '') if data else ''
        
        if not message:
            return jsonify({
                'status': 'error',
                'message': 'Message parameter is required'
            }), 400
        
        # 初始化COM组件
        pythoncom.CoInitialize()
        acad = Autocad()
        
        # 使用Utility.Prompt方法在命令行显示消息
        acad.doc.Utility.Prompt(f"{message}\n")
        
        return jsonify({
            'status': 'success',
            'message': f'Message "{message}" sent to command line'
        })
        
    except Exception as e:
        return jsonify({
            'status': 'error',
            'message': str(e)
        }), 500