小编Sab*_*ncu的帖子

如何找到方形图案角点的像素坐标?

这可能与编程无关,但程序员可能最适合回答它.

对于相机校准,我在纸上打印了一个8 x 8方形图案.我必须手动将这些坐标输入到文本文件中.然后,软件将从那里拾取并计算校准参数.

是否有脚本或某些软件可以在这些图像上运行并获得64个方块中每个方块的4个角的像素坐标?

替代文字

language-agnostic opencv image-processing camera-calibration

3
推荐指数
1
解决办法
437
查看次数

PsIsContainer的别名?

我希望能够使用"dir"或"folder"字符串,而不是键入PsIsContainer.在PowerShell中是否有一种方法允许我将一个字符串替换为另一个字符串,如本例所示?

powershell

3
推荐指数
2
解决办法
5382
查看次数

替代C#中的内联?

我使用以下语句将当前函数的名称(例如,事件处理程序)打印到Visual Studio(2010)中的"输出"窗口:

Debug.Write(MethodBase.GetCurrentMethod().Name);
Run Code Online (Sandbox Code Playgroud)

如果我把它放在一个实用程序函数中DisplayFunctionName(),而不是调用它的父函数,每次显示的是" DisplayFunctionName" - 那里没有惊喜!

我知道C#中没有内联,但是对于这种情况还有另一种解决方案,没有使用"代码片段",以便不必复制这些语句吗?

c# inline-code

3
推荐指数
1
解决办法
252
查看次数

PowerShell - cmdlet如何返回值?

请考虑以下PowerShell赋值语句:

$rc = (gci -r -fi *.rar)
Run Code Online (Sandbox Code Playgroud)

如果目录结构中存在rar文件,则echo $?显示以下内容:

    Directory: C:\file tests

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
-a---         7/22/2012   7:09 PM    3699776 somefile.rar
Run Code Online (Sandbox Code Playgroud)

精细.现在考虑这个PowerShell if语句:

if (gci -r -fi *.rar)
{
    echo "Rar files found"
}
else 
{
    echo "No rar files"
}
Run Code Online (Sandbox Code Playgroud)

在if语句中,gci cmdlet的返回被视为布尔值.但是,在早期赋值语句的情况下,来自相同cmdlet的返回生成了字符串输出.

我知道PS是一个对象shell.我理解cmdlet根据上下文采取不同的行为.但我不明白这是如何实现的,以及使用了什么机制.

具体来说:if语句允许从gci返回被视为布尔值的魔力是什么?如果我想在其他地方使用该机制(在if语句之外),我该怎么办?是否有某种"强制转换为布尔"运算符?例如

$rc = (Cast following to boolean)(gci -r -fi *.rar)
Run Code Online (Sandbox Code Playgroud)

powershell

3
推荐指数
1
解决办法
4304
查看次数

类似Powershell的算子不是可交换的

考虑以下:

$var = 'Now is the time'
if ($var -like 'Now*') { 'true' } else { 'false' }
Run Code Online (Sandbox Code Playgroud)

输出:true

现在将两个操作数交换为-like运算符:

if ('Now*' -like $var) { 'true' } else { 'false' }
Run Code Online (Sandbox Code Playgroud)

输出:false

类似的运算符不是可交换的.这是预期的吗?

我在Win 7上,使用PS版本2.谢谢.

powershell commutativity

3
推荐指数
1
解决办法
489
查看次数

这个文本处理代码是Pythonic吗?

我需要取一行文字(单词)并在行的中点后面的第一个空格中将它分成两半; 例如:

The quick brown fox jumps over the lazy dog.
                         ^
Run Code Online (Sandbox Code Playgroud)

上面一行的中点位于第22位,并且该行在"跳跃"一词之后的空格处分开.

如果您能查看以下代码并告诉我它是否是Pythonic,我将不胜感激.如果没有,请建议正确的方法.谢谢.(PS:我来自C++背景.)

    midLine = len(line) / 2                  # Locate mid-point of line.
    foundSpace = False
    # Traverse the second half of the line and look for a space.
    for ii in range(midLine):
        if line[midLine + ii] == ' ':        # Found a space.
            foundSpace = True
            break
    if (foundSpace == True):
        linePart1 = line[:midLine + ii]      # Start of line to location of space - 1. …
Run Code Online (Sandbox Code Playgroud)

python text

3
推荐指数
1
解决办法
76
查看次数

背景颜色阻碍 WPF UserControl 内容

我有一个UserControl,它在 XAML 中被引用如下:

<local:ColumnGraphRenderCtrl x:Name="graphCtrl" Grid.Column="1" 
    Height="Auto" Width="Auto"/>
Run Code Online (Sandbox Code Playgroud)

UserControl问题有几个矩形形状,它们显示效果细腻。

但是,如果我指定了一种Background颜色,则指定的颜色会阻碍矩形,而只会显示颜色。例如:

<local:ColumnGraphRenderCtrl x:Name="graphCtrl" Background="Blue" Grid.Column="1" 
    Height="Auto" Width="Auto"/>
Run Code Online (Sandbox Code Playgroud)

(如果我将颜色更改为“透明”,则矩形会变得可见。)

我也尝试使用 a ControlTemplatefor the UserControl(作为 a 的一部分Style),但我得到了相同的结果(即背景颜色阻挡了 UserControl 的内容)。

我在MSDN上查找了Control.Background属性,它提供了以下注释:

Background 属性仅适用于控件的静止状态。控件的默认样式指定控件状态更改时的外观。例如,如果您在 Button 上设置 Background 属性,则该按钮仅在未被按下或禁用时才具有该值。如果要创建具有更高级背景自定义的控件,则必须定义控件的样式。

此属性仅影响其模板使用 Background 属性作为参数的控件。在其他控件上,此属性没有影响。

MSDN中的注释有什么意义,如何指定背景颜色而不阻塞控件内容?

编辑:内容控件(矩形)是在代码隐藏中手动添加的,如果这有区别的话。

用户控制代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes; …
Run Code Online (Sandbox Code Playgroud)

c# wpf

3
推荐指数
1
解决办法
3394
查看次数

Shell Bash脚本以升序打印数字

我真的是Shell Bash脚本的新手。对于用户输入的给定任意数字,我需要在一行上按升序打印数字。

#!/bin/bash

declare nos[5]=(4 -1 2 66 10)
# Prints the number befor sorting

echo "Original Numbers in array:"
for (( i = 0; i <= 4; i++ ))
    do
      echo ${nos[$i]}
    done

 #
 # Now do the Sorting of numbers  
 #

for (( i = 0; i <= 4 ; i++ ))
do
   for (( j = $i; j <= 4; j++ ))
   do
      if [ ${nos[$i]} -gt ${nos[$j]}  ]; then
       t=${nos[$i]}
       nos[$i]=${nos[$j]}
       nos[$j]=$t
      fi
   done
done

# …
Run Code Online (Sandbox Code Playgroud)

linux bash shell

3
推荐指数
1
解决办法
2万
查看次数

Windows 7上mscoree.dll的位置和实例

几本书(T. Soulami的Windows调试[2012],A. Troelsen的Pro C#with .NET 3.0)指定mscoree.dll作为system32文件夹的位置.但是,在我的32位Windows 7系统上,mscoree.dll文件有两个实例,位于以下位置:

C:\Windows\winsxs\x86_netfx-mscoree_dll_31bf3856ad364e35_6.2.7600.16513_none_7daed23956119a9f
C:\Windows\winsxs\x86_netfx-mscoree_dll_31bf3856ad364e35_6.2.7601.17514_none_7f96335553371a30
Run Code Online (Sandbox Code Playgroud)

此外,我的印象是(应该)只有一个版本的这个在.NET可执行引导过程中使用的填充程序DLL.

会很感激解释.

.net debugging windows-7

3
推荐指数
1
解决办法
4179
查看次数

如何从 Windows 的 Docker 桌面公开 2375

我是 Docker 的新手。我的 Docker Desktop for Windows 版本是 19.03.5。我想从 Windows 的 Docker 桌面公开端口 2375,但是如果我使用 GUI 设置, 在此处输入图片说明 只能通过 tcp://127.0.0.1 访问,我的内部 IP 地址 192.168.3.9 不起作用。
https://docs.microsoft.com/en-us/virtualization/windowscontainers/manage-docker/configure-docker-daemon
该文档说要编辑C:\ProgramData\Docker\config\daemon.json和添加"hosts": ["tcp://0.0.0.0:2375"],但它不适用于任何 IP 地址,我很确定我是按照文档来做的。
那么我应该怎么做才能从同一子网中的另一台计算机通过 tcp://192.168.3.9 进行访问?

docker

3
推荐指数
3
解决办法
5651
查看次数