टिकज 'मिडवे' जो 'टू' ओपेरशन के बारे में जानता है

Nov 29 2020

यह उसी के समान है / इसका अनुसरण करें: टिकज समन्वय जो अंतिम "वर्तमान समन्वय" को संदर्भित करता है

उस प्रश्न का उत्तर मुझे toइसके बजाय उपयोग करने का सुझाव देता है --ताकि मैं \tikztostart"वर्तमान समन्वय" का उल्लेख करने के लिए उपयोग कर सकूं, जो तब तक ठीक काम करता है जब तक मैं उपयोग करने का प्रयास नहीं करता node[midway]। मूल उदाहरण पर विस्तार:

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
 \coordinate (origin) at (0,0);
 \draw (origin) -| (1,1) -- (1,1-|origin) % this uses --
   node [midway,above] {hi};
 \begin{scope}[xshift=2cm]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (1,1) to (\tikztostart-|origin) % this uses to
    node [midway,above] {hi};
 \end{scope}
\end{tikzpicture}
\end{document}

आउटपुट (बाएं एक सही है):

यह मुझे लगता midwayहै कि इसके बारे में नहीं जानता है toऔर midwayपिछले पथ खंड से लेता है ।

मुझे कैसे midwayपता चलेगा कि यह नोड को toउपपथ में संलग्न करना है ? या मेरे पिछले सवाल का एक और जवाब जो इस मामले का मुकाबला करता है?

जवाब

3 M.AlJumaily Nov 29 2020 at 11:00

Ti k Zling द्वारा दिया गया जवाब बहुत अच्छा है और इसके अलावा, हम बस के आदेश को स्वैप कर सकते हैं \node[]{...}: से

\draw (origin) -| (1,1) to (\tikztostart-|origin) node [midway,above] {hi};

सेवा

\draw (origin) -| (1,1) to node [midway,above] {hi} (\tikztostart-|origin);

हम यहां तक midwayकि Ti k Z को डिफ़ॉल्ट रूप से पथ के मध्य तक समायोजित कर सकते हैं, दो निर्देशांक के बीच इसके सैंडविच के बीच तालमेल बिठाते हैं:

\draw (origin) -| (1,1) to node [above] {hi} (\tikztostart-|origin);

एक और साइड टिप वह posकुंजी का उपयोग करना है जो सटीक प्लेसमेंट के लिए 0.0 और 1.0 के बीच एक दशमलव तर्क को स्वीकार करता है।

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
 \coordinate (origin) at (0,0);
 \draw (origin) -| (1,1) -- (1,1-|origin)
   node [midway,above] {hi};
 \begin{scope}[xshift=2cm]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (2,1) to node [above] {hi} (\tikztostart-|origin);
 \end{scope}
  \begin{scope}[xshift=5cm]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (2,1) to node [pos=0.25, above] {hi} (\tikztostart-|origin);
 \end{scope}
\end{tikzpicture}
\end{document}
3 Noname Nov 29 2020 at 10:54

आपका अवलोकन सही है। एम। अल जुमली की टिप्पणी पहले से ही है , जो एक संभव समाधान दिखाता है। एक अन्य समाधान, जो यकीनन अधिक सुविधाजनक है, क्योंकि यह धार वाले रास्तों के लिए अच्छी तरह से किनारे के लेबल रखता है, edge labelकुंजी का उपयोग करना है । कृपया ध्यान दें कि आपके पास जो समस्या है उसका कोई लेना-देना नहीं है, \tikztostartलेकिन वास्तव में केवल साथ है to

\documentclass[tikz,margin=1cm]{standalone}
\begin{document}
\begin{tikzpicture}
 \begin{scope}[local bounding box=1]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (1,1) -- (1,1-|origin)
    node [midway,above] {hi};
 \end{scope}  
 \begin{scope}[xshift=2.5cm,local bounding box=2]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (1,1) coordinate (tmp) to (tmp-|origin)
   node [midway,above] {hi};
 \end{scope}
 \begin{scope}[xshift=5cm,local bounding box=3]
  \coordinate (origin) at (0,0);
  \draw (origin) -| (1,1) to[edge label'={hi}] (\tikztostart-|origin);
 \end{scope}
 %
 \path foreach \X [count=\Y] in {--,to,to w/ edge label}
 {(\Y.south) node[below=1em,font=\sffamily]{\X}};
\end{tikzpicture}
\end{document}